@cyklang/cli 0.2.2 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/AssetCommand.js +63 -23
- package/build/Cmd.d.ts +2 -2
- package/build/Cmd.js +2 -1
- package/build/DBClient.d.ts +2 -0
- package/build/DBClient.js +16 -0
- package/build/ModuleCommand.js +11 -3
- package/build/QueryCommand.js +49 -39
- package/build/RunCommand.js +21 -28
- package/build/TableCommand.js +8 -8
- package/build/TestCommand.js +21 -2
- package/build/UserCommand.js +7 -1
- package/docker.env +2 -2
- package/package.json +3 -5
- package/src/AssetCommand.ts +82 -35
- package/src/Cmd.ts +10 -6
- package/src/DBClient.ts +24 -0
- package/src/ModuleCommand.ts +17 -11
- package/src/QueryCommand.ts +56 -39
- package/src/RunCommand.ts +33 -39
- package/src/TableCommand.ts +8 -8
- package/src/TestCommand.ts +28 -3
- package/src/UserCommand.ts +7 -1
- package/test/cyklang.xsd +870 -219
- package/test/t0.output +1 -1
- package/test/t0.xml +1 -1
- package/test/t01.output +16 -2
- package/test/t01.xml +46 -8
- package/test/t09.output +1 -1
- package/test/t09.xml +1 -1
- package/test/t0__us.output +4 -0
- package/test/t0__us.xml +7 -0
- package/test/t1.ts +8 -0
- package/test/t17.output +2 -0
- package/test/t17.xml +3 -1
- package/test/t20.output +0 -0
- package/test/t20.xml +17 -1
- package/test/t21.output +2 -0
- package/test/t21.xml +39 -9
- package/test/t22.output +0 -0
- package/test/t23.output +4 -0
- package/test/t23.xml +4 -4
- package/test/t24.output +1007 -0
- package/test/t24.xml +20 -0
- package/test/t25.output +4 -0
- package/test/t25.xml +23 -0
- package/test/t26.output +5 -0
- package/test/t26.xml +35 -0
package/test/t0.output
CHANGED
package/test/t0.xml
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<let name="jour">28</let>
|
|
12
12
|
<let name="mois">12</let>
|
|
13
13
|
<let name="annee">2021</let>
|
|
14
|
-
<let name="message">"
|
|
14
|
+
<let name="message">format("La date en français est {0}/{1}/{2}", jour, mois, annee)</let>
|
|
15
15
|
<print>message</print>
|
|
16
16
|
<print>"28" + "12"</print>
|
|
17
17
|
<print>28 + 12</print>
|
package/test/t01.output
CHANGED
|
@@ -2,14 +2,27 @@
|
|
|
2
2
|
Dossier remorquage : DURAND lieu Saint-Denis
|
|
3
3
|
then dos2.libelle == DURAND
|
|
4
4
|
Nested block dos1.id 1
|
|
5
|
-
*** Function add
|
|
5
|
+
*** Function add BEGIN a 150 b 300
|
|
6
|
+
else a gt b
|
|
6
7
|
**** Function add output c =450
|
|
7
8
|
Result 150 + 300 : 450
|
|
8
|
-
*** Function add
|
|
9
|
+
*** Function add BEGIN a 1000 b 2000
|
|
10
|
+
else a gt b
|
|
9
11
|
**** Function add output c =3000
|
|
10
12
|
Result 1000 + 2000 : 3000
|
|
11
13
|
Before fact of 4
|
|
14
|
+
fact begin N = 4
|
|
15
|
+
fact begin N = 3
|
|
16
|
+
fact begin N = 2
|
|
17
|
+
fact begin N = 1
|
|
18
|
+
fact begin N = 0
|
|
12
19
|
factorielle de 4 = 24
|
|
20
|
+
fact begin N = 5
|
|
21
|
+
fact begin N = 4
|
|
22
|
+
fact begin N = 3
|
|
23
|
+
fact begin N = 2
|
|
24
|
+
fact begin N = 1
|
|
25
|
+
fact begin N = 0
|
|
13
26
|
factorielle de 5 : 120
|
|
14
27
|
PST1 id=100 libelle=Prestation 1
|
|
15
28
|
PST2 id=100 libelle=Prestation 2
|
|
@@ -30,3 +43,4 @@ dos3 300 dossier 300
|
|
|
30
43
|
Vidage de l'object pst1 :
|
|
31
44
|
name id, value 100
|
|
32
45
|
name libelle, value Prestation 2
|
|
46
|
+
v_obj.nested.member = 888
|
package/test/t01.xml
CHANGED
|
@@ -13,12 +13,21 @@
|
|
|
13
13
|
<type name="dossier_remorquage" base="dossier">
|
|
14
14
|
<string name="lieu" />
|
|
15
15
|
</type>
|
|
16
|
-
|
|
16
|
+
|
|
17
17
|
<function name="add" returns="c: number">
|
|
18
18
|
<number name="a" />
|
|
19
19
|
<number name="b"/>
|
|
20
20
|
<block>
|
|
21
|
-
<print>"*** Function add BEGIN" + a</print>
|
|
21
|
+
<print>"*** Function add BEGIN a " + a + " b " + b</print>
|
|
22
|
+
<if>
|
|
23
|
+
<condition><![CDATA[ a > b]]></condition>
|
|
24
|
+
<then>
|
|
25
|
+
<print>"then a gt b"</print>
|
|
26
|
+
</then>
|
|
27
|
+
<else>
|
|
28
|
+
<print>"else a gt b"</print>
|
|
29
|
+
</else>
|
|
30
|
+
</if>
|
|
22
31
|
<let name="c">a + b</let>
|
|
23
32
|
<print>"**** Function add output c =" + c</print>
|
|
24
33
|
</block>
|
|
@@ -26,15 +35,18 @@
|
|
|
26
35
|
<function name="fact" returns="result: number">
|
|
27
36
|
<number name="N"/>
|
|
28
37
|
<block>
|
|
38
|
+
<print>"fact begin N = " + N</print>
|
|
39
|
+
<number name="fact1">1</number>
|
|
40
|
+
<number name="N_1">N - 1</number>
|
|
29
41
|
<if>
|
|
30
42
|
<condition><![CDATA[ N <= 0]]></condition>
|
|
31
43
|
<then>
|
|
32
44
|
<let name="result">1</let>
|
|
33
45
|
</then>
|
|
34
46
|
<else>
|
|
35
|
-
|
|
47
|
+
|
|
36
48
|
<call function="fact" returns="fact1">
|
|
37
|
-
<number name="N">
|
|
49
|
+
<number name="N">N_1</number>
|
|
38
50
|
</call>
|
|
39
51
|
<let name="result">N * fact1</let>
|
|
40
52
|
</else>
|
|
@@ -79,13 +91,13 @@
|
|
|
79
91
|
<print>"Result 150 + 300 : " + result</print>
|
|
80
92
|
<let name="result">add(1000,2000)</let>
|
|
81
93
|
<print>"Result 1000 + 2000 : " + result</print>
|
|
82
|
-
<number name="
|
|
94
|
+
<number name="Nombre"> 4 </number>
|
|
83
95
|
|
|
84
|
-
<print>"Before fact of " +
|
|
96
|
+
<print>"Before fact of " + Nombre</print>
|
|
85
97
|
<call function="fact" returns="result">
|
|
86
|
-
<number name="N">
|
|
98
|
+
<number name="N">Nombre</number>
|
|
87
99
|
</call>
|
|
88
|
-
<print>"factorielle de " +
|
|
100
|
+
<print>"factorielle de " + Nombre + " = " + result</print>
|
|
89
101
|
<print>"factorielle de 5 : " + fact(5)</print>
|
|
90
102
|
<object type="prestation" name="pst1">
|
|
91
103
|
<number name="id">100</number>
|
|
@@ -182,4 +194,30 @@
|
|
|
182
194
|
</block>
|
|
183
195
|
</function>
|
|
184
196
|
</call>
|
|
197
|
+
|
|
198
|
+
<!-- context of callee if FunctionData.funct -->
|
|
199
|
+
|
|
200
|
+
<object name="v_obj"/>
|
|
201
|
+
<number name="caller_nb">888</number>
|
|
202
|
+
|
|
203
|
+
<function name="callee">
|
|
204
|
+
<block>
|
|
205
|
+
<call object="v_obj" method="push">
|
|
206
|
+
<object name="nested">
|
|
207
|
+
<number name="member">caller_nb</number>
|
|
208
|
+
</object>
|
|
209
|
+
</call>
|
|
210
|
+
</block>
|
|
211
|
+
</function>
|
|
212
|
+
|
|
213
|
+
<function name="caller">
|
|
214
|
+
<block>
|
|
215
|
+
<number name="caller_nb">999</number>
|
|
216
|
+
<call function="callee"/>
|
|
217
|
+
<print>"v_obj.nested.member = " + v_obj.nested.member</print>
|
|
218
|
+
</block>
|
|
219
|
+
</function>
|
|
220
|
+
|
|
221
|
+
<call function="caller"/>
|
|
222
|
+
|
|
185
223
|
</module>
|
package/test/t09.output
CHANGED
package/test/t09.xml
CHANGED
package/test/t0__us.xml
ADDED
package/test/t1.ts
ADDED
package/test/t17.output
CHANGED
package/test/t17.xml
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<?xml-model href="cyklang.xsd" ?>
|
|
1
|
+
<?xml-model href="https://www.cyklang.net/schema/cyklang.xsd" ?>
|
|
2
2
|
<module>
|
|
3
3
|
<string name="d1">"2022-07-14"</string>
|
|
4
4
|
<print>"day : "+datepart("day", d1)+", month : "+datepart("month", d1)+", year : "+datepart("year", d1)</print>
|
|
@@ -18,4 +18,6 @@
|
|
|
18
18
|
if(entry.entry_debit == null || entry.entry_debit == undefined, 0, entry.entry_debit)
|
|
19
19
|
- if(entry.entry_credit == null || entry.entry_credit == undefined, 0, entry.entry_credit)
|
|
20
20
|
</print>
|
|
21
|
+
<print>"Expression with boolean terms"</print>
|
|
22
|
+
<print><![CDATA[ "TRUE = " + (true && "VRAI") ]]> </print>
|
|
21
23
|
</module>
|
package/test/t20.output
ADDED
|
File without changes
|
package/test/t20.xml
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<?xml-model href="cyklang.xsd" ?>
|
|
2
|
-
<module
|
|
2
|
+
<module>
|
|
3
3
|
<object name="settings"/>
|
|
4
4
|
<function name="__init__">
|
|
5
5
|
<object name="settings"/>
|
|
@@ -12,4 +12,20 @@
|
|
|
12
12
|
<print>"print_settings : " + string(settings)</print>
|
|
13
13
|
</block>
|
|
14
14
|
</function>
|
|
15
|
+
|
|
16
|
+
<!-- context of callee if FunctionData.funct -->
|
|
17
|
+
|
|
18
|
+
<number name="caller_nb">888</number>
|
|
19
|
+
|
|
20
|
+
<function name="callee">
|
|
21
|
+
<object name="v_obj"/>
|
|
22
|
+
<block>
|
|
23
|
+
<call object="v_obj" method="push">
|
|
24
|
+
<object name="nested">
|
|
25
|
+
<number name="member">caller_nb</number>
|
|
26
|
+
</object>
|
|
27
|
+
</call>
|
|
28
|
+
</block>
|
|
29
|
+
</function>
|
|
30
|
+
|
|
15
31
|
</module>
|
package/test/t21.output
CHANGED
package/test/t21.xml
CHANGED
|
@@ -1,15 +1,45 @@
|
|
|
1
|
-
<?xml-model href="cyklang.xsd" ?>
|
|
1
|
+
<?xml-model href="https://www.cyklang.net/schema/cyklang.xsd" ?>
|
|
2
2
|
<module>
|
|
3
|
+
<string name="chaine"/>
|
|
4
|
+
<set name="chaine" literal="">A + B</set>
|
|
5
|
+
<print>"chaine = " +chaine</print>
|
|
6
|
+
|
|
3
7
|
<object name="params">
|
|
4
8
|
<string name="name">"Dupont"</string>
|
|
5
9
|
<string name="surname">"Jean"</string>
|
|
6
10
|
</object>
|
|
7
|
-
<module_object name="m_t20"
|
|
8
|
-
|
|
9
|
-
|
|
11
|
+
<module_object name="m_t20"/>
|
|
12
|
+
|
|
13
|
+
<set name="m_t20" module="t20">
|
|
14
|
+
<object name="settings">params</object>
|
|
15
|
+
</set>
|
|
16
|
+
|
|
10
17
|
<!-- <call object="m_t20" method="__init__">
|
|
11
18
|
<object name="settings">params</object>
|
|
12
19
|
</call> -->
|
|
20
|
+
|
|
21
|
+
<object name="v_obj"/>
|
|
22
|
+
<number name="caller_nb">999</number>
|
|
23
|
+
|
|
24
|
+
<!-- <call function="m_t20.callee">
|
|
25
|
+
<object name="v_obj">v_obj</object>
|
|
26
|
+
</call>
|
|
27
|
+
|
|
28
|
+
<print>"v_obj.nested.member = " + v_obj.nested.member</print> -->
|
|
29
|
+
|
|
30
|
+
<function name="f_module_arg">
|
|
31
|
+
<module_object name="module"/>
|
|
32
|
+
<block>
|
|
33
|
+
<call function="module.callee">
|
|
34
|
+
<object name="v_obj">v_obj</object>
|
|
35
|
+
</call>
|
|
36
|
+
<print>"f_module_arg : v_obj.nested.member = " + v_obj.nested.member</print>
|
|
37
|
+
</block>
|
|
38
|
+
</function>
|
|
39
|
+
<call function="f_module_arg">
|
|
40
|
+
<module_object name="module">m_t20</module_object>
|
|
41
|
+
</call>
|
|
42
|
+
|
|
13
43
|
<call object="m_t20" method="print_settings"/>
|
|
14
44
|
|
|
15
45
|
<object name="obj">m_t20</object>
|
|
@@ -23,7 +53,7 @@
|
|
|
23
53
|
</object>
|
|
24
54
|
</object>
|
|
25
55
|
<if>
|
|
26
|
-
<condition><![CDATA[ owner !== undefined && cars.get(owner) !== undefined && cars.get(owner).has('brand') == true ]]
|
|
56
|
+
<condition><![CDATA[ owner !== undefined && cars.get(owner) !== undefined && cars.get(owner).has('brand') == true ]]></condition>
|
|
27
57
|
<then>
|
|
28
58
|
<print>owner + "'s car's brand is " + cars.get(owner).brand</print>
|
|
29
59
|
</then>
|
|
@@ -33,7 +63,7 @@
|
|
|
33
63
|
</if>
|
|
34
64
|
<set name="owner">"yves"</set>
|
|
35
65
|
<if>
|
|
36
|
-
<condition><![CDATA[ owner !== undefined && cars.get(owner) !== undefined && cars.get(owner).has('brand') == true ]]
|
|
66
|
+
<condition><![CDATA[ owner !== undefined && cars.get(owner) !== undefined && cars.get(owner).has('brand') == true ]]></condition>
|
|
37
67
|
<then>
|
|
38
68
|
<print>owner + "'s car's brand is " + cars.get(owner).brand</print>
|
|
39
69
|
</then>
|
|
@@ -43,7 +73,7 @@
|
|
|
43
73
|
</if>
|
|
44
74
|
<set name="owner">"john"</set>
|
|
45
75
|
<if>
|
|
46
|
-
<condition><![CDATA[ owner !== undefined && cars.get(owner) !== undefined && cars.get(owner).has('brand') == true ]]
|
|
76
|
+
<condition><![CDATA[ owner !== undefined && cars.get(owner) !== undefined && cars.get(owner).has('brand') == true ]]></condition>
|
|
47
77
|
<then>
|
|
48
78
|
<print>owner + "'s car's brand is " + cars.get(owner).brand</print>
|
|
49
79
|
</then>
|
|
@@ -55,8 +85,8 @@
|
|
|
55
85
|
<boolean name="bool">true</boolean>
|
|
56
86
|
<set name="bool">boolean("")</set>
|
|
57
87
|
<print>"bool : " + bool</print>
|
|
58
|
-
|
|
59
|
-
<
|
|
88
|
+
|
|
89
|
+
<set name="chaine">150</set>
|
|
60
90
|
<print>"chaine : " + chaine</print>
|
|
61
91
|
|
|
62
92
|
<object name="document">
|
package/test/t22.output
ADDED
|
File without changes
|
package/test/t23.output
ADDED
package/test/t23.xml
CHANGED
|
@@ -7,20 +7,20 @@
|
|
|
7
7
|
|
|
8
8
|
<!-- <db.execute module="t22" method="get_tables" returns="settings">
|
|
9
9
|
</db.execute> -->
|
|
10
|
-
<print>"Client side : " + string(settings)</print>
|
|
10
|
+
<!-- <print>"Client side : " + string(settings)</print> -->
|
|
11
11
|
</block>
|
|
12
12
|
</function>
|
|
13
13
|
|
|
14
14
|
<call function="call_get_tables"/>
|
|
15
15
|
|
|
16
|
-
<print>now()</print>
|
|
16
|
+
<!-- <print>now()</print> -->
|
|
17
17
|
|
|
18
18
|
<function name="wait">
|
|
19
19
|
<number name="duration">1000</number>
|
|
20
20
|
<string name="message"/>
|
|
21
21
|
<block>
|
|
22
22
|
<sleep>duration</sleep>
|
|
23
|
-
<print>
|
|
23
|
+
<print>message</print>
|
|
24
24
|
</block>
|
|
25
25
|
</function>
|
|
26
26
|
|
|
@@ -39,6 +39,6 @@
|
|
|
39
39
|
</call>
|
|
40
40
|
</parallel>
|
|
41
41
|
|
|
42
|
-
<print>
|
|
42
|
+
<print>" AFTER parallel "</print>
|
|
43
43
|
|
|
44
44
|
</module>
|