[Home] [Help]
PACKAGE BODY: APPS.CZ_FCE_DATA
Source
1 PACKAGE BODY CZ_FCE_DATA AS
2 /* $Header: czfcesdb.pls 120.35.12020000.2 2012/12/31 06:56:03 mpothubo ship $ */
3 ---------------------------------------------------------------------------------------
4 PROCEDURE populate_fce_data IS
5 BEGIN
6
7 --Many of the following data is seeded and can be looked up every time logic gen starts.
8 --This may be an overhead when the seed data does not change often, so it may be a good
9 --idea to hardcode this data and have a special procedure that will re-populate it when
10 --necessary.
11
12 cz_fce_compile.h_psntypes('component') := 259;
13 cz_fce_compile.h_psntypes('root') := 2591;
14 cz_fce_compile.h_psntypes('singleton') := 2592;
15 cz_fce_compile.h_psntypes('feature') := 261;
16 cz_fce_compile.h_psntypes('optionfeature') := 0;
17 cz_fce_compile.h_psntypes('integerfeature') := 1;
18 cz_fce_compile.h_psntypes('decimalfeature') := 2;
19 cz_fce_compile.h_psntypes('booleanfeature') := 3;
20 cz_fce_compile.h_psntypes('option') := 262;
21 cz_fce_compile.h_psntypes('reference') := 263;
22 cz_fce_compile.h_psntypes('connector') := 264;
23 cz_fce_compile.h_psntypes('total') := 272;
24 cz_fce_compile.h_psntypes('resource') := 273;
25 cz_fce_compile.h_psntypes('integertotal') := 274;
26 cz_fce_compile.h_psntypes('integerresource') := 275;
27 cz_fce_compile.h_psntypes('bommodel') := 436;
28 cz_fce_compile.h_psntypes('bomoptionclass') := 437;
29 cz_fce_compile.h_psntypes('bomstandard') := 438;
30
31 cz_fce_compile.h_psntypes('beginport') := -1;
32 cz_fce_compile.h_psntypes('endport') := -2;
33 cz_fce_compile.h_psntypes('beginstructure') := -3;
34 cz_fce_compile.h_psntypes('endstructure') := -4;
35 cz_fce_compile.h_psntypes('beginrule') := -5;
36 cz_fce_compile.h_psntypes('endrule') := -6;
37
38 cz_fce_compile.h_instantiability('nonvirtual') := 0;
39 cz_fce_compile.h_instantiability('optional') := 1;
40 cz_fce_compile.h_instantiability('mandatory') := 2;
41 cz_fce_compile.h_instantiability('connector') := 3;
42 cz_fce_compile.h_instantiability('instantiable') := 4;
43
44 cz_fce_compile.h_ruletypes('statement') := 200;
45 cz_fce_compile.h_ruletypes('companion') := 300;
46 cz_fce_compile.h_ruletypes('explicitcompat') := 24;
47 cz_fce_compile.h_ruletypes('designchart') := 30;
48
49 cz_fce_compile.h_ruleclasses('constraint') := 0;
50 cz_fce_compile.h_ruleclasses('default') := 1;
51 cz_fce_compile.h_ruleclasses('search') := 2;
52
53 cz_fce_compile.h_designtypes('primary') := 5;
54 cz_fce_compile.h_designtypes('defining') := 1;
55 cz_fce_compile.h_designtypes('optional') := 3;
56
57 cz_fce_compile.h_mathconstants('e') := 0;
58 cz_fce_compile.h_mathconstants('pi') := 1;
59
60 --------------------------------------------------------
61 -- cz_exnexprtype_lkv --
62 --------------------------------------------------------
63 cz_fce_compile.h_exprtypes('operator') := 200;
64 cz_fce_compile.h_exprtypes('literal') := 201;
65 cz_fce_compile.h_exprtypes('node') := 205;
66 cz_fce_compile.h_exprtypes('property') := 207;
67 cz_fce_compile.h_exprtypes('punctuation') := 208;
68 cz_fce_compile.h_exprtypes('systemproperty') := 210;
69 cz_fce_compile.h_exprtypes('constant') := 211;
70 cz_fce_compile.h_exprtypes('argument') := 221;
71 cz_fce_compile.h_exprtypes('template') := 222;
72 cz_fce_compile.h_exprtypes('forall') := 223;
73 cz_fce_compile.h_exprtypes('iterator') := 224;
74 cz_fce_compile.h_exprtypes('where') := 225;
75 cz_fce_compile.h_exprtypes('compatible') := 226;
76 cz_fce_compile.h_exprtypes('operatorbyname') := 229;
77 cz_fce_compile.h_exprtypes('foralldistinct') := 231;
78 cz_fce_compile.h_exprtypes('nodebyname') := 232;
79 --------------------------------------------------------
80
81 cz_fce_compile.h_datatypes('integer') := 1;
82 cz_fce_compile.h_datatypes('decimal') := 2;
83 cz_fce_compile.h_datatypes('boolean') := 3;
84 cz_fce_compile.h_datatypes('text') := 4;
85 cz_fce_compile.h_datatypes('translatable') := 8;
86
87 cz_fce_compile.h_javatypes('Object') := 2;
88 cz_fce_compile.h_javatypes('IInstanceQuantifier') := 17;
89 cz_fce_compile.h_javatypes('IIntExprDef') := 18;
90 cz_fce_compile.h_javatypes('ILogicExprDef') := 19;
91 cz_fce_compile.h_javatypes('INumExprDef') := 21;
92
93 cz_fce_compile.h_templates('requires') := 1;
94 cz_fce_compile.h_templates('implies') := 2;
95 cz_fce_compile.h_templates('excludes') := 3;
96 cz_fce_compile.h_templates('negates') := 4;
97 cz_fce_compile.h_templates('logic') := 21;
98 cz_fce_compile.h_templates('numeric') := 22;
99 cz_fce_compile.h_templates('propertybased') := 23;
100 cz_fce_compile.h_templates('accumulator') := 25;
101 cz_fce_compile.h_templates('comparison') := 27;
102 cz_fce_compile.h_templates('name') := 31;
103 cz_fce_compile.h_templates('description') := 32;
104 cz_fce_compile.h_templates('options') := 35;
105 cz_fce_compile.h_templates('minvalue') := 37;
106 cz_fce_compile.h_templates('maxvalue') := 38;
107 cz_fce_compile.h_templates('minquantity') := 39;
108 cz_fce_compile.h_templates('maxquantity') := 40;
109 cz_fce_compile.h_templates('minselected') := 41;
110 cz_fce_compile.h_templates('maxselected') := 42;
111 cz_fce_compile.h_templates('selection') := 46;
112 cz_fce_compile.h_templates('state') := 47;
113 cz_fce_compile.h_templates('value') := 48;
114 cz_fce_compile.h_templates('quantity') := 49;
115 cz_fce_compile.h_templates('instancecount') := 50;
116 cz_fce_compile.h_templates('integervalue') := 51;
117 cz_fce_compile.h_templates('decimalvalue') := 52;
118 cz_fce_compile.h_templates('mininstances') := 53;
119 cz_fce_compile.h_templates('maxinstances') := 54;
120 cz_fce_compile.h_templates('decimalquantity') := 55;
121 cz_fce_compile.h_templates('selectioncount') := 57;
122 cz_fce_compile.h_templates('minconnections') := 58;
123 cz_fce_compile.h_templates('maxconnections') := 59;
124 cz_fce_compile.h_templates('connectioncount') := 60;
125 cz_fce_compile.h_templates('relativequantity') := 85;
126 cz_fce_compile.h_templates('assignquantity') := 86;
127 cz_fce_compile.h_templates('assigndecquantity') := 87;
128 cz_fce_compile.h_templates('relativedecquantity') := 88;
129 cz_fce_compile.h_templates('bomoptions') := 95;
130 cz_fce_compile.h_templates('bomoptionsof') := 96;
131 cz_fce_compile.h_templates('beginswith') := 300;
132 cz_fce_compile.h_templates('endswith') := 301;
133 cz_fce_compile.h_templates('contains') := 303;
134 cz_fce_compile.h_templates('like') := 304;
135 cz_fce_compile.h_templates('matches') := 305;
136 cz_fce_compile.h_templates('anytrue') := 306;
137 cz_fce_compile.h_templates('alltrue') := 307;
138 cz_fce_compile.h_templates('aggregatesum') := 308;
139 cz_fce_compile.h_templates('subsetof') := 309;
140 cz_fce_compile.h_templates('union') := 310;
141 cz_fce_compile.h_templates('and') := 316;
142 cz_fce_compile.h_templates('or') := 317;
143 cz_fce_compile.h_templates('equals') := 318;
144 cz_fce_compile.h_templates('notequals') := 320;
145 cz_fce_compile.h_templates('min') := 321;
146 cz_fce_compile.h_templates('max') := 322;
147 cz_fce_compile.h_templates('truncate') := 323;
148 cz_fce_compile.h_templates('optionsof') := 324;
149 cz_fce_compile.h_templates('gt') := 350;
150 cz_fce_compile.h_templates('lt') := 351;
151 cz_fce_compile.h_templates('ge') := 352;
152 cz_fce_compile.h_templates('le') := 353;
153 cz_fce_compile.h_templates('doesnotbeginwith') := 361;
154 cz_fce_compile.h_templates('doesnotendwith') := 362;
155 cz_fce_compile.h_templates('doesnotcontain') := 363;
156 cz_fce_compile.h_templates('notlike') := 364;
157 cz_fce_compile.h_templates('concatenate') := 365;
158 cz_fce_compile.h_templates('totext') := 366;
159 cz_fce_compile.h_templates('none') := 399;
160 cz_fce_compile.h_templates('add') := 401;
161 cz_fce_compile.h_templates('subtract') := 402;
162 cz_fce_compile.h_templates('neg') := 402;
163 cz_fce_compile.h_templates('multiply') := 403;
164 cz_fce_compile.h_templates('ceiling') := 405;
165 cz_fce_compile.h_templates('floor') := 406;
166 cz_fce_compile.h_templates('round') := 407;
167 cz_fce_compile.h_templates('div') := 408;
168 cz_fce_compile.h_templates('mod') := 409;
169 cz_fce_compile.h_templates('pow') := 410;
170 cz_fce_compile.h_templates('roundtonearest') := 411;
171 cz_fce_compile.h_templates('rounddowntonearest') := 412;
172 cz_fce_compile.h_templates('rounduptonearest') := 413;
173 cz_fce_compile.h_templates('ln') := 414;
174 cz_fce_compile.h_templates('log') := 415;
175 cz_fce_compile.h_templates('exp') := 416;
176 cz_fce_compile.h_templates('abs') := 417;
177 cz_fce_compile.h_templates('sqrt') := 418;
178 cz_fce_compile.h_templates('cos') := 431;
179 cz_fce_compile.h_templates('acos') := 432;
180 cz_fce_compile.h_templates('cosh') := 433;
181 cz_fce_compile.h_templates('sin') := 434;
182 cz_fce_compile.h_templates('asin') := 435;
183 cz_fce_compile.h_templates('sinh') := 436;
184 cz_fce_compile.h_templates('tan') := 437;
185 cz_fce_compile.h_templates('atan') := 438;
186 cz_fce_compile.h_templates('tanh') := 439;
187 cz_fce_compile.h_templates('integerpow') := 551;
188 cz_fce_compile.h_templates('not') := 552;
189 cz_fce_compile.h_templates('textequals') := 553;
190 cz_fce_compile.h_templates('textnotequals') := 554;
191 cz_fce_compile.h_templates('addsto') := 712;
192 cz_fce_compile.h_templates('subtractsfrom') := 714;
193 cz_fce_compile.h_templates('assign') := 451;
194 cz_fce_compile.h_templates('incmin') := 452;
195 cz_fce_compile.h_templates('decmax') := 453;
196 cz_fce_compile.h_templates('minfirst') := 454;
197 cz_fce_compile.h_templates('maxfirst') := 455;
198
199 cz_fce_compile.h_inst('nop') := cz_fce_compile_utils.unsigned_byte (0);
200 cz_fce_compile.h_inst('iconst_m1') := cz_fce_compile_utils.unsigned_byte (2);
201 cz_fce_compile.h_inst('iconst_0') := cz_fce_compile_utils.unsigned_byte (3);
202 cz_fce_compile.h_inst('iconst_1') := cz_fce_compile_utils.unsigned_byte (4);
203 cz_fce_compile.h_inst('iconst_2') := cz_fce_compile_utils.unsigned_byte (5);
204 cz_fce_compile.h_inst('iconst_3') := cz_fce_compile_utils.unsigned_byte (6);
205 cz_fce_compile.h_inst('iconst_4') := cz_fce_compile_utils.unsigned_byte (7);
206 cz_fce_compile.h_inst('iconst_5') := cz_fce_compile_utils.unsigned_byte (8);
207 cz_fce_compile.h_inst('bipush') := cz_fce_compile_utils.unsigned_byte (16);
208 cz_fce_compile.h_inst('sipush') := cz_fce_compile_utils.unsigned_byte (17);
212 cz_fce_compile.h_inst('aload_0') := cz_fce_compile_utils.unsigned_byte (42);
209 cz_fce_compile.h_inst('ldc') := cz_fce_compile_utils.unsigned_byte (18);
210 cz_fce_compile.h_inst('ldc_w') := cz_fce_compile_utils.unsigned_byte (19);
211 cz_fce_compile.h_inst('aload') := cz_fce_compile_utils.unsigned_byte (25);
213 cz_fce_compile.h_inst('aload_1') := cz_fce_compile_utils.unsigned_byte (43);
214 cz_fce_compile.h_inst('aload_2') := cz_fce_compile_utils.unsigned_byte (44);
215 cz_fce_compile.h_inst('aload_3') := cz_fce_compile_utils.unsigned_byte (45);
216 cz_fce_compile.h_inst('aaload') := cz_fce_compile_utils.unsigned_byte (50);
217 cz_fce_compile.h_inst('astore') := cz_fce_compile_utils.unsigned_byte (58);
218 cz_fce_compile.h_inst('astore_0') := cz_fce_compile_utils.unsigned_byte (75);
219 cz_fce_compile.h_inst('astore_1') := cz_fce_compile_utils.unsigned_byte (76);
220 cz_fce_compile.h_inst('astore_2') := cz_fce_compile_utils.unsigned_byte (77);
221 cz_fce_compile.h_inst('astore_3') := cz_fce_compile_utils.unsigned_byte (78);
222 cz_fce_compile.h_inst('aastore') := cz_fce_compile_utils.unsigned_byte (83);
223 cz_fce_compile.h_inst('pop') := cz_fce_compile_utils.unsigned_byte (87);
224 cz_fce_compile.h_inst('mpop') := cz_fce_compile_utils.unsigned_byte (88);
225 cz_fce_compile.h_inst('dup') := cz_fce_compile_utils.unsigned_byte (89);
226 cz_fce_compile.h_inst('swap') := cz_fce_compile_utils.unsigned_byte (95);
227 cz_fce_compile.h_inst('ret') := cz_fce_compile_utils.unsigned_byte (169);
228 cz_fce_compile.h_inst('areturn') := cz_fce_compile_utils.unsigned_byte (176);
229 cz_fce_compile.h_inst('invokevirtual') := cz_fce_compile_utils.unsigned_byte (182);
230 cz_fce_compile.h_inst('invokestatic') := cz_fce_compile_utils.unsigned_byte (184);
231 cz_fce_compile.h_inst('newarray') := cz_fce_compile_utils.unsigned_byte (188);
232 cz_fce_compile.h_inst('multinewarray') := cz_fce_compile_utils.unsigned_byte (202);
233 cz_fce_compile.h_inst('haload_0') := cz_fce_compile_utils.unsigned_byte (203);
234 cz_fce_compile.h_inst('hastore_0') := cz_fce_compile_utils.unsigned_byte (204);
235 cz_fce_compile.h_inst('bulkaastore') := cz_fce_compile_utils.unsigned_byte (205);
236 cz_fce_compile.h_inst('pushtrue') := cz_fce_compile_utils.unsigned_byte (206);
237 cz_fce_compile.h_inst('pushfalse') := cz_fce_compile_utils.unsigned_byte (207);
238 cz_fce_compile.h_inst('pushmath') := cz_fce_compile_utils.unsigned_byte (208);
239 cz_fce_compile.h_inst('haload_1') := cz_fce_compile_utils.unsigned_byte (209);
240 cz_fce_compile.h_inst('hastore_1') := cz_fce_compile_utils.unsigned_byte (210);
241 cz_fce_compile.h_inst('haload_2') := cz_fce_compile_utils.unsigned_byte (211);
242 cz_fce_compile.h_inst('copyto') := cz_fce_compile_utils.unsigned_byte (212);
243 cz_fce_compile.h_inst('copyto_0') := cz_fce_compile_utils.unsigned_byte (213);
244 cz_fce_compile.h_inst('copyto_1') := cz_fce_compile_utils.unsigned_byte (214);
245 cz_fce_compile.h_inst('copyto_2') := cz_fce_compile_utils.unsigned_byte (215);
246 cz_fce_compile.h_inst('copyto_3') := cz_fce_compile_utils.unsigned_byte (216);
247 cz_fce_compile.h_inst('aload_w') := cz_fce_compile_utils.unsigned_byte (217);
248 cz_fce_compile.h_inst('astore_w') := cz_fce_compile_utils.unsigned_byte (218);
249 cz_fce_compile.h_inst('copyto_w') := cz_fce_compile_utils.unsigned_byte (219);
250 cz_fce_compile.h_inst('comment') := cz_fce_compile_utils.unsigned_byte (220);
251
252 cz_fce_compile.h_methoddescriptors('Solver.createModelDef(String)') := 1;
253 cz_fce_compile.h_methoddescriptors('IModelDef.intVar(String, int, int)') := 2;
254 cz_fce_compile.h_methoddescriptors('IModelDef.logicVar(String)') := 3;
255 cz_fce_compile.h_methoddescriptors('IModelDef.floatVar(String, double, double)') := 5;
256 cz_fce_compile.h_methoddescriptors('IModelDef.bagVar(String, Object[], int, int, int, int, int)') := 6;
257 cz_fce_compile.h_methoddescriptors('IModelDef.setVar(String, Object[], int, int)') := 7;
258 cz_fce_compile.h_methoddescriptors('IModelDef.singletonVar(String, IModelDef)') := 8;
259 cz_fce_compile.h_methoddescriptors('IModelDef.instanceSetVar(String, IModelDef, int, int)') := 9;
260 cz_fce_compile.h_methoddescriptors('IModelDef.instanceVar(String, IModelDef)') := 10;
261 cz_fce_compile.h_methoddescriptors('IModelDef.connectorSetVar(String, IModelDef, int, int)') := 11;
262 cz_fce_compile.h_methoddescriptors('Solver.createBomModelDef(String, boolean)') := 12;
263 cz_fce_compile.h_methoddescriptors('IModelDef.bomModelVar(String, IBomModelDef, boolean, double, double, double, int, int, Date, Date, long)') := 13;
264 cz_fce_compile.h_methoddescriptors('IModelDef.bomModelVar(String, IBomModelDef, boolean, int, int, int, int, int, Date, Date, long)') := 14;
265 cz_fce_compile.h_methoddescriptors('Solver.createBomOCDef(String, boolean)') := 15;
266 cz_fce_compile.h_methoddescriptors('IBomDef.bomOptionClassVar(String, IBomOCDef, boolean, double, double, double, int, int, Date, Date, long)') := 16;
267 cz_fce_compile.h_methoddescriptors('IBomDef.bomOptionClassVar(String, IBomOCDef, boolean, int, int, int, int, int, Date, Date, long)') := 17;
268 cz_fce_compile.h_methoddescriptors('IBomDef.bomStandardItemVar(String, boolean, double, double, double, Date, Date, long)') := 18;
269 cz_fce_compile.h_methoddescriptors('IBomDef.bomStandardItemVar(String, boolean, int, int, int, Date, Date, long)') := 19;
270 cz_fce_compile.h_methoddescriptors('IIntExprDef.setDomOrderMinFirst()') := 20;
271 cz_fce_compile.h_methoddescriptors('IIntExprDef.setDomOrderMaxFirst()') := 21;
275 cz_fce_compile.h_methoddescriptors('IModelDef.addConstraint(ILogicExprDef)') := 25;
272 cz_fce_compile.h_methoddescriptors('IIntExprDef.setDomOrderDecMax()') := 22;
273 cz_fce_compile.h_methoddescriptors('IIntExprDef.setDomOrderIncMin()') := 23;
274 cz_fce_compile.h_methoddescriptors('IPortExprDef.setReversePort(IPortExprDef)') := 24;
276 cz_fce_compile.h_methoddescriptors('IModelDef.addConstraint(IForAllDef)') := 26;
277 cz_fce_compile.h_methoddescriptors('IModelDef.addDefaultDecision(ILogicExprDef)') := 27;
278 cz_fce_compile.h_methoddescriptors('IModelDef.addDefaultDecision(IForAllDef)') := 28;
279 cz_fce_compile.h_methoddescriptors('IModelDef.addSearchDecision(ILogicExprDef)') := 29;
280 cz_fce_compile.h_methoddescriptors('IModelDef.addSearchDecision(IForAllDef)') := 30;
281 cz_fce_compile.h_methoddescriptors('INumExprDef.sum(INumExprDef)') := 31;
282 cz_fce_compile.h_methoddescriptors('INumExprDef.diff(INumExprDef)') := 32;
283 cz_fce_compile.h_methoddescriptors('INumExprDef.prod(INumExprDef)') := 33;
284 cz_fce_compile.h_methoddescriptors('INumExprDef.ceil()') := 34;
285 cz_fce_compile.h_methoddescriptors('INumExprDef.floor()') := 35;
286 cz_fce_compile.h_methoddescriptors('INumExprDef.round()') := 36;
287 cz_fce_compile.h_methoddescriptors('INumExprDef.div(INumExprDef)') := 37;
288 cz_fce_compile.h_methoddescriptors('INumExprDef.eq(INumExprDef)') := 38;
289 cz_fce_compile.h_methoddescriptors('INumExprDef.neq(INumExprDef)') := 39;
290 cz_fce_compile.h_methoddescriptors('INumExprDef.gt(INumExprDef)') := 40;
291 cz_fce_compile.h_methoddescriptors('INumExprDef.lt(INumExprDef)') := 41;
292 cz_fce_compile.h_methoddescriptors('INumExprDef.ge(INumExprDef)') := 42;
293 cz_fce_compile.h_methoddescriptors('INumExprDef.le(INumExprDef)') := 43;
294 cz_fce_compile.h_methoddescriptors('ILogicExprDef.equiv(ILogicExprDef)') := 44;
295 cz_fce_compile.h_methoddescriptors('ILogicExprDef.implies(ILogicExprDef)') := 45;
296 cz_fce_compile.h_methoddescriptors('ILogicExprDef.excludes(ILogicExprDef)') := 46;
297 cz_fce_compile.h_methoddescriptors('ILogicExprDef.notequiv(ILogicExprDef)') := 47;
298 cz_fce_compile.h_methoddescriptors('ILogicExprDef.and(ILogicExprDef)') := 48;
299 cz_fce_compile.h_methoddescriptors('ILogicExprDef.or(ILogicExprDef)') := 49;
300 cz_fce_compile.h_methoddescriptors('INumExprDef.trunc()') := 50;
301 cz_fce_compile.h_methoddescriptors('INumExprDef.pow(int)') := 51;
302 cz_fce_compile.h_methoddescriptors('INumExprDef.log()') := 52;
303 cz_fce_compile.h_methoddescriptors('INumExprDef.exp()') := 53;
304 cz_fce_compile.h_methoddescriptors('INumExprDef.abs()') := 54;
305 cz_fce_compile.h_methoddescriptors('INumExprDef.sqrt()') := 55;
306 cz_fce_compile.h_methoddescriptors('INumExprDef.cos()') := 56;
307 cz_fce_compile.h_methoddescriptors('INumExprDef.acos()') := 57;
308 cz_fce_compile.h_methoddescriptors('INumExprDef.asin()') := 58;
309 cz_fce_compile.h_methoddescriptors('INumExprDef.atan()') := 59;
310 cz_fce_compile.h_methoddescriptors('IExprDef.assign()') := 60;
311 cz_fce_compile.h_methoddescriptors('IIntExprDef.minFirst()') := 61;
312 cz_fce_compile.h_methoddescriptors('IIntExprDef.maxFirst()') := 62;
313 cz_fce_compile.h_methoddescriptors('INumExprDef.incMin()') := 63;
314 cz_fce_compile.h_methoddescriptors('INumExprDef.decMax()') := 64;
315 cz_fce_compile.h_methoddescriptors('ILogicExprDef.not()') := 65;
316 cz_fce_compile.h_methoddescriptors('IModelDef.any(ILogicExprDef[])') := 66;
317 cz_fce_compile.h_methoddescriptors('IModelDef.all(ILogicExprDef[])') := 67;
318 cz_fce_compile.h_methoddescriptors('IModelDef.min(INumExprDef[])') := 68;
319 cz_fce_compile.h_methoddescriptors('IModelDef.max(INumExprDef[])') := 69;
320 cz_fce_compile.h_methoddescriptors('IPortExprDef.card()') := 70;
321 cz_fce_compile.h_methoddescriptors('ISetExprDef.card()') := 71;
322 cz_fce_compile.h_methoddescriptors('IModelDef.literal(int)') := 72;
323 cz_fce_compile.h_methoddescriptors('IModelDef.literal(double)') := 73;
324 cz_fce_compile.h_methoddescriptors('INumExprDef.sum(int)') := 74;
325 cz_fce_compile.h_methoddescriptors('INumExprDef.diff(int)') := 75;
326 cz_fce_compile.h_methoddescriptors('INumExprDef.prod(int)') := 76;
327 cz_fce_compile.h_methoddescriptors('INumExprDef.div(int)') := 77;
328 cz_fce_compile.h_methoddescriptors('INumExprDef.eq(int)') := 78;
329 cz_fce_compile.h_methoddescriptors('INumExprDef.neq(int)') := 79;
330 cz_fce_compile.h_methoddescriptors('INumExprDef.gt(int)') := 80;
331 cz_fce_compile.h_methoddescriptors('INumExprDef.lt(int)') := 81;
332 cz_fce_compile.h_methoddescriptors('INumExprDef.ge(int)') := 82;
333 cz_fce_compile.h_methoddescriptors('INumExprDef.le(int)') := 83;
334 cz_fce_compile.h_methoddescriptors('INumExprDef.sum(double)') := 84;
335 cz_fce_compile.h_methoddescriptors('INumExprDef.diff(double)') := 85;
336 cz_fce_compile.h_methoddescriptors('INumExprDef.prod(double)') := 86;
337 cz_fce_compile.h_methoddescriptors('INumExprDef.div(double)') := 87;
338 cz_fce_compile.h_methoddescriptors('INumExprDef.eq(double)') := 88;
339 cz_fce_compile.h_methoddescriptors('INumExprDef.neq(double)') := 89;
340 cz_fce_compile.h_methoddescriptors('INumExprDef.gt(double)') := 90;
341 cz_fce_compile.h_methoddescriptors('INumExprDef.lt(double)') := 91;
342 cz_fce_compile.h_methoddescriptors('INumExprDef.ge(double)') := 92;
343 cz_fce_compile.h_methoddescriptors('INumExprDef.le(double)') := 93;
344 cz_fce_compile.h_methoddescriptors('IExprDef.setId(long)') := 94;
345 cz_fce_compile.h_methoddescriptors('IModelDef.getVar(String)') := 95;
346 cz_fce_compile.h_methoddescriptors('IInstanceQuantifier.getType()') := 96;
347 cz_fce_compile.h_methoddescriptors('ISingletonExprDef.getType()') := 97;
348 cz_fce_compile.h_methoddescriptors('ISingletonExprDef.getVarRef(IExprDef)') := 98;
349 cz_fce_compile.h_methoddescriptors('IInstanceQuantifier.getExprFromInstance(IExprDef)') := 99;
350 cz_fce_compile.h_methoddescriptors('IModelDef.instancesOf(IPortExprDef)') := 100;
354 cz_fce_compile.h_methoddescriptors('IModelDef.forAll(IInstanceQuantifier[], ILogicExprDef)') := 104;
351 cz_fce_compile.h_methoddescriptors('IInstanceQuantifier.instancesOf(IPortExprDef)') := 101;
352 cz_fce_compile.h_methoddescriptors('IModelDef.forAll(IInstanceQuantifier, ILogicExprDef)') := 102;
353 cz_fce_compile.h_methoddescriptors('IModelDef.forAll(IInstanceQuantifier, IInstanceQuantifier, ILogicExprDef)') := 103;
355 cz_fce_compile.h_methoddescriptors('IIntExprDef.getMin()') := 105;
356 cz_fce_compile.h_methoddescriptors('IIntExprDef.getMax()') := 106;
357 cz_fce_compile.h_methoddescriptors('IBomDef.absQty()') := 107;
358 cz_fce_compile.h_methoddescriptors('IBomDef.relQty()') := 108;
359 cz_fce_compile.h_methoddescriptors('IBomDef.selected()') := 109;
360 cz_fce_compile.h_methoddescriptors('ISetExprDef.contains(Object)') := 110;
361 cz_fce_compile.h_methoddescriptors('IModelDef.literal(boolean)') := 111;
362 cz_fce_compile.h_methoddescriptors('ILogicExprDef.equiv(boolean)') := 112;
363 cz_fce_compile.h_methoddescriptors('ILogicExprDef.implies(boolean)') := 113;
364 cz_fce_compile.h_methoddescriptors('ILogicExprDef.excludes(boolean)') := 114;
365 cz_fce_compile.h_methoddescriptors('ILogicExprDef.notequiv(boolean)') := 115;
366 cz_fce_compile.h_methoddescriptors('ILogicExprDef.and(boolean)') := 116;
367 cz_fce_compile.h_methoddescriptors('ILogicExprDef.or(boolean)') := 117;
368 cz_fce_compile.h_methoddescriptors('IModelDef.sum(INumExprDef[])') := 118;
369 cz_fce_compile.h_methoddescriptors('IPortExprDef.hierarchicalUnion(IPortExprDef)') := 119;
370 cz_fce_compile.h_methoddescriptors('IPortExprDef.sum(INumExprDef)') := 120;
371 cz_fce_compile.h_methoddescriptors('IPortExprDef.getType()') := 121;
372 cz_fce_compile.h_methoddescriptors('INumExprDef.neg()') := 122;
373 cz_fce_compile.h_methoddescriptors('IBagExprDef.elementCount(Object)') := 123;
374 cz_fce_compile.h_methoddescriptors('IModelDef.compat(Object[], Object[][])') := 124;
375 cz_fce_compile.h_methoddescriptors('ISetExprDef.intersects(Object[])') := 125;
376 cz_fce_compile.h_methoddescriptors('IPortExprDef.getCardMin()') := 126;
377 cz_fce_compile.h_methoddescriptors('IPortExprDef.getCardMax()') := 127;
378 cz_fce_compile.h_methoddescriptors('IBomDef.getOCCardSet()') := 128;
379 cz_fce_compile.h_methoddescriptors('IModelDef.addDefaultDecision(IDecisionExprDef)') := 129;
380 cz_fce_compile.h_methoddescriptors('IModelDef.addSearchDecision(IDecisionExprDef)') := 130;
381 cz_fce_compile.h_methoddescriptors('IBagExprDef.count()') := 131;
382 cz_fce_compile.h_methoddescriptors('ISetExprDef.elementCount(Object)') := 132;
383 cz_fce_compile.h_methoddescriptors('IPortExprDef.subsetEq(IPortExprDef)') := 133;
384 cz_fce_compile.h_methoddescriptors('IPortExprDef.union(IPortExprDef)') := 134;
385 cz_fce_compile.h_methoddescriptors('ILogicExprDef.setEffectiveFrom(Date)') := 135;
386 cz_fce_compile.h_methoddescriptors('ILogicExprDef.setEffectiveUntil(Date)') := 136;
387 cz_fce_compile.h_methoddescriptors('ILogicExprDef.setEffectiveUsages(long)') := 137;
388 cz_fce_compile.h_methoddescriptors('ISetExprDef.setEffectiveFrom(Date)') := 138;
389 cz_fce_compile.h_methoddescriptors('ISetExprDef.setEffectiveUntil(Date)') := 139;
390 cz_fce_compile.h_methoddescriptors('ISetExprDef.setEffectiveUsages(long)') := 140;
391 cz_fce_compile.h_methoddescriptors('IPortExprDef.setEffectiveFrom(Date)') := 141;
392 cz_fce_compile.h_methoddescriptors('IPortExprDef.setEffectiveUntil(Date)') := 142;
393 cz_fce_compile.h_methoddescriptors('IPortExprDef.setEffectiveUsages(long)') := 143;
394 cz_fce_compile.h_methoddescriptors('ILogicExprDef.setEffectiveFrom(Date)') := 144;
395 cz_fce_compile.h_methoddescriptors('ILogicExprDef.setEffectiveUntil(Date)') := 145;
396 cz_fce_compile.h_methoddescriptors('ILogicExprDef.setEffectiveUsages(long)') := 146;
397 cz_fce_compile.h_methoddescriptors('IDecisionDef.setEffectiveFrom(Date)') := 147;
398 cz_fce_compile.h_methoddescriptors('IDecisionDef.setEffectiveUntil(Date)') := 148;
399 cz_fce_compile.h_methoddescriptors('IDecisionDef.setEffectiveUsages(long)') := 149;
400
401 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('add')) := 'INumExprDef.sum(INumExprDef)';
402 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('subtract')) := 'INumExprDef.diff(INumExprDef)';
403 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('multiply')) := 'INumExprDef.prod(INumExprDef)';
404 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('div')) := 'INumExprDef.div(INumExprDef)';
405 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('equals')) := 'INumExprDef.eq(INumExprDef)';
406 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('notequals')) := 'INumExprDef.neq(INumExprDef)';
407 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('gt')) := 'INumExprDef.gt(INumExprDef)';
408 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('lt')) := 'INumExprDef.lt(INumExprDef)';
409 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('ge')) := 'INumExprDef.ge(INumExprDef)';
410 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('le')) := 'INumExprDef.le(INumExprDef)';
411
412 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('add')) := 'INumExprDef.sum(int)';
413 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('subtract')) := 'INumExprDef.diff(int)';
414 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('multiply')) := 'INumExprDef.prod(int)';
415 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('div')) := 'INumExprDef.div(int)';
416 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('equals')) := 'INumExprDef.eq(int)';
417 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('notequals')) := 'INumExprDef.neq(int)';
418 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('gt')) := 'INumExprDef.gt(int)';
419 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('lt')) := 'INumExprDef.lt(int)';
420 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('ge')) := 'INumExprDef.ge(int)';
424 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('subtract')) := 'INumExprDef.diff(double)';
421 cz_fce_compile.h_operators_2_int ( cz_fce_compile.h_templates('le')) := 'INumExprDef.le(int)';
422
423 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('add')) := 'INumExprDef.sum(double)';
425 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('multiply')) := 'INumExprDef.prod(double)';
426 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('div')) := 'INumExprDef.div(double)';
427 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('equals')) := 'INumExprDef.eq(double)';
428 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('notequals')) := 'INumExprDef.neq(double)';
429 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('gt')) := 'INumExprDef.gt(double)';
430 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('lt')) := 'INumExprDef.lt(double)';
431 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('ge')) := 'INumExprDef.ge(double)';
432 cz_fce_compile.h_operators_2_double ( cz_fce_compile.h_templates('le')) := 'INumExprDef.le(double)';
433
434 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('requires')) := 'ILogicExprDef.equiv(ILogicExprDef)';
435 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('implies')) := 'ILogicExprDef.implies(ILogicExprDef)';
436 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('excludes')) := 'ILogicExprDef.excludes(ILogicExprDef)';
437 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('negates')) := 'ILogicExprDef.notequiv(ILogicExprDef)';
438 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('and')) := 'ILogicExprDef.and(ILogicExprDef)';
439 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('or')) := 'ILogicExprDef.or(ILogicExprDef)';
440 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('subsetof')) := 'IPortExprDef.subsetEq(IPortExprDef)';
441 cz_fce_compile.h_operators_2 ( cz_fce_compile.h_templates('union')) := 'IPortExprDef.union(IPortExprDef)';
442
443 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('requires')) := 'ILogicExprDef.equiv(boolean)';
444 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('implies')) := 'ILogicExprDef.implies(boolean)';
445 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('excludes')) := 'ILogicExprDef.excludes(boolean)';
446 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('negates')) := 'ILogicExprDef.notequiv(boolean)';
447 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('and')) := 'ILogicExprDef.and(boolean)';
448 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('or')) := 'ILogicExprDef.or(boolean)';
449 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('equals')) := 'ILogicExprDef.equiv(boolean)';
450 cz_fce_compile.h_operators_2_boolean ( cz_fce_compile.h_templates('notequals')) := 'ILogicExprDef.notequiv(boolean)';
451
452 --These operators are only allowed to be used in the Where clause of a Forall or with Selection()
453 --for text properties. In all cases Compiler evaluates such expressions at compile time, and
454 --there is no corresponding Solver methods.
455
456 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('doesnotbeginwith')) := NULL;
457 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('doesnotendwith')) := NULL;
458 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('doesnotcontain')) := NULL;
459 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('notlike')) := NULL;
460 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('concatenate')) := NULL;
461 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('beginswith')) := NULL;
462 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('endswith')) := NULL;
463 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('contains')) := NULL;
464 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('like')) := NULL;
465 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('matches')) := NULL;
466 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('textequals')) := NULL;
467 cz_fce_compile.h_operators_2_text ( cz_fce_compile.h_templates ('textnotequals')) := NULL;
468
469 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('truncate')) := 'INumExprDef.trunc()';
470 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('ceiling')) := 'INumExprDef.ceil()';
471 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('floor')) := 'INumExprDef.floor()';
472 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('round')) := 'INumExprDef.round()';
473 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('ln')) := 'INumExprDef.log()';
474 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('exp')) := 'INumExprDef.exp()';
475 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('abs')) := 'INumExprDef.abs()';
476 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('neg')) := 'INumExprDef.neg()';
477 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('sqrt')) := 'INumExprDef.sqrt()';
478 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('cos')) := 'INumExprDef.cos()';
479 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('acos')) := 'INumExprDef.acos()';
480 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('asin')) := 'INumExprDef.asin()';
481 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('atan')) := 'INumExprDef.atan()';
482 cz_fce_compile.h_operators_1 ( cz_fce_compile.h_templates('not')) := 'ILogicExprDef.not()';
483
484 cz_fce_compile.h_operators_3 ( cz_fce_compile.h_templates('anytrue')) := 'IModelDef.any(ILogicExprDef[])';
485 cz_fce_compile.h_operators_3 ( cz_fce_compile.h_templates('alltrue')) := 'IModelDef.all(ILogicExprDef[])';
486 cz_fce_compile.h_operators_3 ( cz_fce_compile.h_templates('min')) := 'IModelDef.min(INumExprDef[])';
487 cz_fce_compile.h_operators_3 ( cz_fce_compile.h_templates('max')) := 'IModelDef.max(INumExprDef[])';
488
492 cz_fce_compile.h_heuristic_ops ( cz_fce_compile.h_templates('assign')) := 'IExprDef.assign()';
489 cz_fce_compile.h_operators_3_opt ( cz_fce_compile.h_templates('anytrue')) := 'ILogicExprDef.or(ILogicExprDef)';
490 cz_fce_compile.h_operators_3_opt ( cz_fce_compile.h_templates('alltrue')) := 'ILogicExprDef.and(ILogicExprDef)';
491
493 cz_fce_compile.h_heuristic_ops ( cz_fce_compile.h_templates('minfirst')) := 'IIntExprDef.minFirst()';
494 cz_fce_compile.h_heuristic_ops ( cz_fce_compile.h_templates('maxfirst')) := 'IIntExprDef.maxFirst()';
495 cz_fce_compile.h_heuristic_ops ( cz_fce_compile.h_templates('incmin')) := 'INumExprDef.incMin()';
496 cz_fce_compile.h_heuristic_ops ( cz_fce_compile.h_templates('decmax')) := 'INumExprDef.decMax()';
497
498 cz_fce_compile.h_mathrounding_ops ( cz_fce_compile.h_templates('mod')) := 'INumExprDef.floor()';
499 cz_fce_compile.h_mathrounding_ops ( cz_fce_compile.h_templates('roundtonearest')) := 'INumExprDef.round()';
500 cz_fce_compile.h_mathrounding_ops ( cz_fce_compile.h_templates('rounddowntonearest')) := 'INumExprDef.floor()';
501 cz_fce_compile.h_mathrounding_ops ( cz_fce_compile.h_templates('rounduptonearest')) := 'INumExprDef.ceil()';
502
503 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('anytrue')) := 1;
504 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('alltrue')) := 1;
505 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('requires')) := 1;
506 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('implies')) := 1;
507 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('excludes')) := 1;
508 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('negates')) := 1;
509 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('and')) := 1;
510 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('or')) := 1;
511 cz_fce_compile.h_logical_ops ( cz_fce_compile.h_templates('not')) := 1;
512
513 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('equals')) := 1;
514 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('notequals')) := 1;
515 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('min')) := 1;
516 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('max')) := 1;
517 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('gt')) := 1;
518 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('lt')) := 1;
519 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('ge')) := 1;
520 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('le')) := 1;
521 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('add')) := 1;
522 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('subtract')) := 1;
523 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('neg')) := 1;
524 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('multiply')) := 1;
525 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('ceiling')) := 1;
526 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('floor')) := 1;
527 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('round')) := 1;
528 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('div')) := 1;
529 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('pow')) := 1;
530 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('integerpow')) := 1;
531 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('ln')) := 1;
532 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('exp')) := 1;
533 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('abs')) := 1;
534 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('sqrt')) := 1;
535 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('cos')) := 1;
536 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('acos')) := 1;
537 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('asin')) := 1;
538 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('atan')) := 1;
539 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('addsto')) := 1;
540 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('subtractsfrom')) := 1;
541 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('log')) := 1;
542 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('cosh')) := 1;
543 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('sin')) := 1;
544 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('sinh')) := 1;
545 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('tan')) := 1;
546 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('tanh')) := 1;
547 cz_fce_compile.h_numeric_ops ( cz_fce_compile.h_templates('aggregatesum')) := 1;
548
549 --These operators are allowed as rounding operators in a simple accumulation template.
550
551 cz_fce_compile.h_rounding_ops ( cz_fce_compile.h_templates('truncate')) := 1;
552 cz_fce_compile.h_rounding_ops ( cz_fce_compile.h_templates('ceiling')) := 1;
553 cz_fce_compile.h_rounding_ops ( cz_fce_compile.h_templates('floor')) := 1;
554 cz_fce_compile.h_rounding_ops ( cz_fce_compile.h_templates('round')) := 1;
555 cz_fce_compile.h_rounding_ops ( cz_fce_compile.h_templates('none')) := 1;
556
557 --These operators are allowed as accumulation operators in a simple accumulation template.
558
559 cz_fce_compile.h_accumulation_ops ( cz_fce_compile.h_templates('addsto')) := 1;
560 cz_fce_compile.h_accumulation_ops ( cz_fce_compile.h_templates('subtractsfrom')) := 1;
561
562 cz_fce_compile.h_trigonometric_ops ( cz_fce_compile.h_templates('log')) := 1;
563 cz_fce_compile.h_trigonometric_ops ( cz_fce_compile.h_templates('cosh')) := 1;
564 cz_fce_compile.h_trigonometric_ops ( cz_fce_compile.h_templates('sin')) := 1;
565 cz_fce_compile.h_trigonometric_ops ( cz_fce_compile.h_templates('sinh')) := 1;
566 cz_fce_compile.h_trigonometric_ops ( cz_fce_compile.h_templates('tan')) := 1;
567 cz_fce_compile.h_trigonometric_ops ( cz_fce_compile.h_templates('tanh')) := 1;
568
569 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('equals')) := '=';
573 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('ge')) := '>=';
570 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('notequals')) := '<>';
571 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('gt')) := '>';
572 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('lt')) := '<';
574 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('le')) := '<=';
575 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('and')) := 'AND';
576 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('or')) := 'OR';
577 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('not')) := 'NOT';
578 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('add')) := '+';
579 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('subtract')) := '-';
580 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('multiply')) := '*';
581 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('div')) := '/';
582 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('totext')) := 'TO_CHAR';
583 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('neg')) := '-';
584 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('textequals')) := '=';
585 cz_fce_compile.h_template_tokens ( cz_fce_compile.h_templates('textnotequals')) := '<>';
586
587 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('quantity')) := 1;
588 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('state')) := 1;
589 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('value')) := 1;
590 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('instancecount')) := 1;
591 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('integervalue')) := 1;
592 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('decimalvalue')) := 1;
593 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('decimalquantity')) := 1;
594 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('relativequantity')) := 1;
595 cz_fce_compile.h_runtime_properties ( cz_fce_compile.h_templates('relativedecquantity')) := 1;
596
597 --These tables contain methods that should be called for bom case. If a property is not
598 --applicable for bom, the value does not matter.
599
600 cz_fce_compile.h_quantities ( cz_fce_compile.h_templates('quantity')) := 'IBomDef.absQty()';
601 cz_fce_compile.h_quantities ( cz_fce_compile.h_templates('decimalquantity')) := 'IBomDef.absQty()';
602 cz_fce_compile.h_quantities ( cz_fce_compile.h_templates('relativequantity')) := 'IBomDef.relQty()';
603 cz_fce_compile.h_quantities ( cz_fce_compile.h_templates('relativedecquantity')) := 'IBomDef.relQty()';
604 cz_fce_compile.h_quantities ( cz_fce_compile.h_templates('assignquantity')) := 'IBomDef.absQty()';
605 cz_fce_compile.h_quantities ( cz_fce_compile.h_templates('assigndecquantity')) := 'IBomDef.absQty()';
606
607 END populate_fce_data;
608 ---------------------------------------------------------------------------------------
609 END;