File tree Expand file tree Collapse file tree 3 files changed +276
-16
lines changed
compiler/tools/fpp-to-dict/test/top Expand file tree Collapse file tree 3 files changed +276
-16
lines changed Original file line number Diff line number Diff line change 59
59
],
60
60
"default" : " Module1.E2.PASS"
61
61
},
62
+ {
63
+ "kind" : " struct" ,
64
+ "qualifiedName" : " Module1.ScalarStruct" ,
65
+ "members" : {
66
+ "u32" : {
67
+ "type" : {
68
+ "name" : " U32" ,
69
+ "kind" : " integer" ,
70
+ "size" : 32 ,
71
+ "signed" : false
72
+ },
73
+ "index" : 6
74
+ },
75
+ "f64" : {
76
+ "type" : {
77
+ "name" : " F64" ,
78
+ "kind" : " float" ,
79
+ "size" : 64
80
+ },
81
+ "index" : 9
82
+ },
83
+ "f32" : {
84
+ "type" : {
85
+ "name" : " F32" ,
86
+ "kind" : " float" ,
87
+ "size" : 32
88
+ },
89
+ "index" : 8
90
+ },
91
+ "i8" : {
92
+ "type" : {
93
+ "name" : " I8" ,
94
+ "kind" : " integer" ,
95
+ "size" : 8 ,
96
+ "signed" : true
97
+ },
98
+ "index" : 0
99
+ },
100
+ "i16" : {
101
+ "type" : {
102
+ "name" : " I16" ,
103
+ "kind" : " integer" ,
104
+ "size" : 16 ,
105
+ "signed" : true
106
+ },
107
+ "index" : 1
108
+ },
109
+ "u8" : {
110
+ "type" : {
111
+ "name" : " U8" ,
112
+ "kind" : " integer" ,
113
+ "size" : 8 ,
114
+ "signed" : false
115
+ },
116
+ "index" : 4
117
+ },
118
+ "u64" : {
119
+ "type" : {
120
+ "name" : " U64" ,
121
+ "kind" : " integer" ,
122
+ "size" : 64 ,
123
+ "signed" : false
124
+ },
125
+ "index" : 7
126
+ },
127
+ "i64" : {
128
+ "type" : {
129
+ "name" : " I64" ,
130
+ "kind" : " integer" ,
131
+ "size" : 64 ,
132
+ "signed" : true
133
+ },
134
+ "index" : 3
135
+ },
136
+ "i32" : {
137
+ "type" : {
138
+ "name" : " I32" ,
139
+ "kind" : " integer" ,
140
+ "size" : 32 ,
141
+ "signed" : true
142
+ },
143
+ "index" : 2
144
+ },
145
+ "u16" : {
146
+ "type" : {
147
+ "name" : " U16" ,
148
+ "kind" : " integer" ,
149
+ "size" : 16 ,
150
+ "signed" : false
151
+ },
152
+ "index" : 5
153
+ }
154
+ },
155
+ "default" : {
156
+ "u32" : 0 ,
157
+ "f64" : 0.0 ,
158
+ "f32" : 0.0 ,
159
+ "i8" : 0 ,
160
+ "i16" : 0 ,
161
+ "u8" : 0 ,
162
+ "u64" : 0 ,
163
+ "i64" : 0 ,
164
+ "i32" : 0 ,
165
+ "u16" : 0
166
+ }
167
+ },
62
168
{
63
169
"kind" : " struct" ,
64
170
"qualifiedName" : " Module1.S1" ,
253
359
],
254
360
"annotation" : " Parameter of type string"
255
361
},
256
- {
257
- "name" : " Module1.myFirstC1.PARAM1_PRM_SAVE" ,
258
- "commandKind" : " save" ,
259
- "opcode" : 773 ,
260
- "formalParams" : [
261
- ],
262
- "annotation" : " Parameter (struct)"
263
- },
264
362
{
265
363
"name" : " Module1.myFirstC1.PARAM3_PRM_SET" ,
266
364
"commandKind" : " set" ,
405
503
],
406
504
"annotation" : " Command with 2 args (array of strings and U32)"
407
505
},
506
+ {
507
+ "name" : " Module1.myFirstC2.SendScalars" ,
508
+ "commandKind" : " sync" ,
509
+ "opcode" : 1026 ,
510
+ "formalParams" : [
511
+ {
512
+ "name" : " s" ,
513
+ "type" : {
514
+ "name" : " Module1.ScalarStruct" ,
515
+ "kind" : " qualifiedIdentifier"
516
+ },
517
+ "ref" : false
518
+ }
519
+ ],
520
+ "annotation" : " Send scalars"
521
+ },
522
+ {
523
+ "name" : " Module1.myFirstC1.PARAM1_PRM_SAVE" ,
524
+ "commandKind" : " save" ,
525
+ "opcode" : 773 ,
526
+ "formalParams" : [
527
+ ],
528
+ "annotation" : " Parameter (struct)"
529
+ },
408
530
{
409
531
"name" : " Module1.myFirstC1.PARAM5_PRM_SET" ,
410
532
"commandKind" : " set" ,
Original file line number Diff line number Diff line change 59
59
],
60
60
"default" : " Module1.E2.PASS"
61
61
},
62
+ {
63
+ "kind" : " struct" ,
64
+ "qualifiedName" : " Module1.ScalarStruct" ,
65
+ "members" : {
66
+ "u32" : {
67
+ "type" : {
68
+ "name" : " U32" ,
69
+ "kind" : " integer" ,
70
+ "size" : 32 ,
71
+ "signed" : false
72
+ },
73
+ "index" : 6
74
+ },
75
+ "f64" : {
76
+ "type" : {
77
+ "name" : " F64" ,
78
+ "kind" : " float" ,
79
+ "size" : 64
80
+ },
81
+ "index" : 9
82
+ },
83
+ "f32" : {
84
+ "type" : {
85
+ "name" : " F32" ,
86
+ "kind" : " float" ,
87
+ "size" : 32
88
+ },
89
+ "index" : 8
90
+ },
91
+ "i8" : {
92
+ "type" : {
93
+ "name" : " I8" ,
94
+ "kind" : " integer" ,
95
+ "size" : 8 ,
96
+ "signed" : true
97
+ },
98
+ "index" : 0
99
+ },
100
+ "i16" : {
101
+ "type" : {
102
+ "name" : " I16" ,
103
+ "kind" : " integer" ,
104
+ "size" : 16 ,
105
+ "signed" : true
106
+ },
107
+ "index" : 1
108
+ },
109
+ "u8" : {
110
+ "type" : {
111
+ "name" : " U8" ,
112
+ "kind" : " integer" ,
113
+ "size" : 8 ,
114
+ "signed" : false
115
+ },
116
+ "index" : 4
117
+ },
118
+ "u64" : {
119
+ "type" : {
120
+ "name" : " U64" ,
121
+ "kind" : " integer" ,
122
+ "size" : 64 ,
123
+ "signed" : false
124
+ },
125
+ "index" : 7
126
+ },
127
+ "i64" : {
128
+ "type" : {
129
+ "name" : " I64" ,
130
+ "kind" : " integer" ,
131
+ "size" : 64 ,
132
+ "signed" : true
133
+ },
134
+ "index" : 3
135
+ },
136
+ "i32" : {
137
+ "type" : {
138
+ "name" : " I32" ,
139
+ "kind" : " integer" ,
140
+ "size" : 32 ,
141
+ "signed" : true
142
+ },
143
+ "index" : 2
144
+ },
145
+ "u16" : {
146
+ "type" : {
147
+ "name" : " U16" ,
148
+ "kind" : " integer" ,
149
+ "size" : 16 ,
150
+ "signed" : false
151
+ },
152
+ "index" : 5
153
+ }
154
+ },
155
+ "default" : {
156
+ "u32" : 0 ,
157
+ "f64" : 0.0 ,
158
+ "f32" : 0.0 ,
159
+ "i8" : 0 ,
160
+ "i16" : 0 ,
161
+ "u8" : 0 ,
162
+ "u64" : 0 ,
163
+ "i64" : 0 ,
164
+ "i32" : 0 ,
165
+ "u16" : 0
166
+ }
167
+ },
62
168
{
63
169
"kind" : " struct" ,
64
170
"qualifiedName" : " Module1.S1" ,
283
389
],
284
390
"annotation" : " Parameter of type string"
285
391
},
286
- {
287
- "name" : " Module1.mySecondC1.PARAM1_PRM_SAVE" ,
288
- "commandKind" : " save" ,
289
- "opcode" : 1285 ,
290
- "formalParams" : [
291
- ],
292
- "annotation" : " Parameter (struct)"
293
- },
294
392
{
295
393
"name" : " Module1.mySecondC1.PARAM3_PRM_SET" ,
296
394
"commandKind" : " set" ,
397
495
],
398
496
"annotation" : " Command with no args"
399
497
},
498
+ {
499
+ "name" : " Module1.mySecondC2.SendScalars" ,
500
+ "commandKind" : " sync" ,
501
+ "opcode" : 1538 ,
502
+ "formalParams" : [
503
+ {
504
+ "name" : " s" ,
505
+ "type" : {
506
+ "name" : " Module1.ScalarStruct" ,
507
+ "kind" : " qualifiedIdentifier"
508
+ },
509
+ "ref" : false
510
+ }
511
+ ],
512
+ "annotation" : " Send scalars"
513
+ },
514
+ {
515
+ "name" : " Module1.mySecondC1.PARAM1_PRM_SAVE" ,
516
+ "commandKind" : " save" ,
517
+ "opcode" : 1285 ,
518
+ "formalParams" : [
519
+ ],
520
+ "annotation" : " Parameter (struct)"
521
+ },
400
522
{
401
523
"name" : " Module1.mySecondC2.Command1" ,
402
524
"commandKind" : " sync" ,
Original file line number Diff line number Diff line change @@ -45,6 +45,19 @@ module Module1 {
45
45
y: EnumArray
46
46
} default { x = E2.PASS }
47
47
48
+ struct ScalarStruct {
49
+ i8: I8,
50
+ i16: I16,
51
+ i32: I32,
52
+ i64: I64,
53
+ u8: U8,
54
+ u16: U16,
55
+ u32: U32,
56
+ u64: U64,
57
+ f32: F32,
58
+ f64: F64
59
+ }
60
+
48
61
# Component
49
62
active component Component1 {
50
63
@@ -193,6 +206,9 @@ module Module1 {
193
206
@ Command with 3 args (of types string, I32, and bool)
194
207
sync command Command2(a: string, b: I32, c: bool)
195
208
209
+ @ Send scalars
210
+ sync command SendScalars(s: ScalarStruct)
211
+
196
212
# Events
197
213
@ Event with a single U64 arg
198
214
event Event1(
You can’t perform that action at this time.
0 commit comments