Salome HOME
PN bug notation scientifique
[tools/eficas.git] / Exemples / ex19 / main.py
1 # -*- coding: utf-8 -*-
2 """
3    Exemple d'utilisation d'un générateur au format asterv5
4
5    Dans un premier temps on importe un catalogue
6    de définition contenu dans un module et on le valide ::
7
8       import cata
9       from cata import JdC
10       cr=JdC.report()
11       if cr.estvide(): ...
12
13    Dans un deuxième temps, on construit un jeu de commandes
14    a partir d'une chaine de caractères et on vérifie sa
15    conformité.
16 """
17
18 import sys
19 sys.path[:0]=['../..','../../..']
20
21 from Cata import cata
22
23 cr=cata.JdC.report()
24 print cr
25
26 f=open('ahlv100a.comm','r')
27 text=f.read()
28 f.close()
29
30 j=cata.JdC(procedure=text,cata=cata,nom="ahlv100a")
31
32 j.compile()
33 if not j.cr.estvide():
34    print j.cr
35    sys.exit()
36
37 j.exec_compile()
38 if not j.cr.estvide():
39    print j.cr
40    sys.exit()
41
42 cr=j.report()
43 if not cr.estvide():
44    print cr
45    sys.exit()
46
47 # On récupère les plugins de la famille generator
48 import generator
49
50 g=generator.plugins['asterv5']()
51 print g.gener(j,format='beautifie')
52 g.writefile('titi.comm')
53