@@ -29,54 +29,62 @@ import java.util.HashMap;
29
29
import java.util.ArrayList;
30
30
import java.util.List;
31
31
import java.util.Collections;
32
- import org.culturegraph.mf.flux.Flow ;
32
+ import org.culturegraph.mf.flux.parser.FluxProgramm ;
33
33
import org.culturegraph.mf.exceptions.FluxParseException;
34
34
}
35
35
36
36
@members {
37
- private Flow flow ;
37
+ private FluxProgramm flux = new FluxProgramm() ;
38
38
private Map< String, String> vars = new HashMap< String, String> ();
39
39
40
40
public final void addVaribleAssignements(final Map< String, String> vars) {
41
41
this.vars.putAll(vars);
42
42
}
43
43
}
44
44
45
- flux returns [ List < Flow > flows = new ArrayList < Flow > () ]
45
+ flux returns [ FluxProgramm retValue = flux ]
46
46
:
47
47
varDefs
48
48
(
49
49
flow
50
50
{
51
- $flows.add(this.flow );
51
+ flux.nextFlow( );
52
52
}
53
53
)*
54
+
55
+ {
56
+ flux.compile();
57
+ }
54
58
;
55
59
56
60
flow
57
- @init {
58
- this.flow = new Flow();
59
- }
60
61
:
61
62
(
62
63
StdIn
63
64
{
64
- flow .setStdInStart();
65
+ flux .setStdInStart();
65
66
}
66
67
| e= exp
67
68
{
68
- flow .setStringStart($e.value);
69
+ flux .setStringStart($e.value);
69
70
}
71
+ | ws= Wormhole
72
+ {
73
+ flux.setWormholeStart($ws.text);
74
+ }
70
75
)
71
76
flowtail
77
+ (
78
+ we= Wormhole
79
+ {
80
+ flux.setWormholeEnd($we.text);
81
+ }
82
+ )?
72
83
;
73
84
74
85
varDefs
75
86
:
76
- varDef*
77
- {
78
-
79
- }
87
+ varDef*
80
88
;
81
89
82
90
varDef
@@ -101,21 +109,21 @@ tee
101
109
^ (
102
110
TEE
103
111
{
104
- flow .startTee();
112
+ flux .startTee();
105
113
// System.out.println(" start tee" );
106
114
}
107
115
(
108
116
^ (SUBFLOW flowtail)
109
117
110
118
{
111
- flow .endSubFlow();
119
+ flux .endSubFlow();
112
120
// System.out.println(" end subflow" );
113
121
}
114
122
)+
115
123
)
116
124
117
125
{
118
- flow .endTee();
126
+ flux .endTee();
119
127
// System.out.println(" end tee" );
120
128
}
121
129
;
@@ -178,7 +186,7 @@ final List<Object> cArgs = new ArrayList<Object>();
178
186
)
179
187
180
188
{
181
- flow .addElement(flow.createElement( $name.text, namedArgs, cArgs) );
189
+ flux .addElement($name.text, namedArgs, cArgs);
182
190
}
183
191
;
184
192
0 commit comments