Metafor

ULiege - Aerospace & Mechanical Engineering

User Tools

Site Tools


commit:2007:12_19

Commit 2007-12-19

Modifs

Exceptions

Les exceptions C++ sont maintenant récupérées par SWIG et converties en exceptions “python”:

Imaginons que j'ai merdouillé cont2 (je crée une ligne avec le point 10 qui n'existe pas):

>>>
>>> import cont2
 
** FATAL ERROR: Cannot find Point #10 when linking Line #1 to its components
**    [file=e:\dev\oo_meta\mtgeo\mtGeoGeoObject.inl line 196]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "E:\dev\oo_meta\cont2.py", line 41, in <module>
    curveset.copy(Line(1, 10, 2))
  File "E:\dev\oo_meta\wrap\mtGeo.py", line 1035, in copy
    return _mtGeo.NumberedObjectSetCurve_copy(*args)
RuntimeError: Runtime Error
>>> 
>>> 

Avantages:

  • Ca plante plus si on lance Metafor sous python pur (l'exception FatalError n'est pas catchissifiée par python). La batterie n'ouvre donc plus une fenêtre JIT debug lors d'une FatalError.
  • Affichage de la pile (avec le numéro de ligne problématique).
  • Récupération de la main si on est en interactif (histoire de faire un chti browse par exemple).

Fichiers ajoutés/supprimés

 

Romain BOMAN 2007/12/19 09:30

commit/2007/12_19.txt · Last modified: 2016/03/30 15:23 (external edit)