7fd59977 |
1 | -- File: Analysis.cdl |
2 | -- Created: Fri Feb 21 15:48:10 1992 |
3 | -- Author: Arnaud BOUZY |
4 | -- <adn@topsn2> |
5 | ---Copyright: Matra Datavision 1992 |
6 | |
7 | |
8 | private class Analysis from ExprIntrp |
9 | |
10 | ---Purpose: |
11 | |
12 | uses Generator from ExprIntrp, |
13 | GeneralExpression from Expr, |
14 | GeneralRelation from Expr, |
15 | GeneralFunction from Expr, |
16 | StackOfGeneralExpression from ExprIntrp, |
17 | StackOfGeneralRelation from ExprIntrp, |
18 | StackOfGeneralFunction from ExprIntrp, |
19 | StackOfInteger from TColStd, |
20 | SequenceOfGeneralExpression from Expr, |
21 | SequenceOfNamedFunction from ExprIntrp, |
22 | SequenceOfNamedExpression from ExprIntrp, |
23 | NamedFunction from Expr, |
24 | NamedExpression from Expr, |
25 | AsciiString from TCollection, |
26 | StackOfNames from ExprIntrp |
27 | |
28 | is |
29 | |
30 | Create |
31 | returns Analysis; |
32 | |
33 | SetMaster(me : in out; agen : Generator) |
34 | is static; |
35 | |
36 | Push(me : in out; exp : GeneralExpression) |
37 | is static; |
38 | |
39 | PushRelation(me : in out; rel : GeneralRelation) |
40 | is static; |
41 | |
42 | PushName(me : in out; name : AsciiString) |
43 | is static; |
44 | |
45 | PushValue(me : in out; degree : Integer) |
46 | is static; |
47 | |
48 | PushFunction(me : in out; func : GeneralFunction) |
49 | is static; |
50 | |
51 | Pop(me : in out) |
52 | returns GeneralExpression |
53 | is static; |
54 | |
55 | PopRelation(me : in out) |
56 | returns GeneralRelation |
57 | is static; |
58 | |
59 | PopName(me : in out) |
60 | returns AsciiString |
61 | is static; |
62 | |
63 | PopValue(me: in out) |
64 | returns Integer |
65 | is static; |
66 | |
67 | PopFunction(me: in out) |
68 | returns GeneralFunction |
69 | is static; |
70 | |
71 | IsExpStackEmpty(me) |
72 | returns Boolean |
73 | is static; |
74 | |
75 | IsRelStackEmpty(me) |
76 | returns Boolean |
77 | is static; |
78 | |
79 | ResetAll(me : in out) |
80 | is static; |
81 | |
82 | Use(me : in out; func : NamedFunction) |
83 | is static; |
84 | |
85 | Use(me : in out; named : NamedExpression) |
86 | is static; |
87 | |
88 | GetNamed(me : in out; name : AsciiString) |
89 | returns NamedExpression |
90 | is static; |
91 | |
92 | GetFunction(me : in out; name : AsciiString) |
93 | returns NamedFunction |
94 | is static; |
95 | |
96 | fields |
97 | |
98 | myGEStack : StackOfGeneralExpression; |
99 | myGRStack : StackOfGeneralRelation; |
100 | myGFStack : StackOfGeneralFunction; |
101 | myNameStack : StackOfNames; |
102 | myValueStack : StackOfInteger; |
103 | myFunctions : SequenceOfNamedFunction; |
104 | myNamed : SequenceOfNamedExpression; |
105 | myMaster : Generator; |
106 | |
107 | end Analysis; |