forked from gabordemooij/citrine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
dictionary.h
299 lines (299 loc) · 12.9 KB
/
dictionary.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
#define CTR_DICT_VAR "var"
#define CTR_DICT_VAR_ICON "☞"
#define CTR_DICT_ME "me"
#define CTR_DICT_ME_ICON "⛏"
#define CTR_DICT_MY "my"
#define CTR_DICT_MY_ICON "⚿"
#define CTR_DICT_NEW "new"
#define CTR_DICT_NEW_ARG "new:"
#define CTR_DICT_EQUALS "equals:"
#define CTR_DICT_SYMBOL_EQUALS "="
#define CTR_DICT_ONDO "on:do:"
#define CTR_DICT_TYPE "type"
#define CTR_DICT_ISNIL "isNil"
#define CTR_DICT_MYSELF "myself"
#define CTR_DICT_DO "do"
#define CTR_DICT_DONE "done"
#define CTR_DICT_IFFALSE "ifFalse:"
#define CTR_DICT_IFTRUE "ifTrue:"
#define CTR_DICT_MESSAGEARGS "message:arguments:"
#define CTR_DICT_MESSAGE "message:"
#define CTR_DICT_LISTEN "listen:"
#define CTR_DICT_JOIN_PROCESS "join"
#define CTR_DICT_LEARN "learn:means:"
#define CTR_DICT_OBJECT "Object"
#define CTR_DICT_NIL "Nil"
#define CTR_DICT_BREAK "break"
#define CTR_DICT_CONTINUE "continue"
#define CTR_DICT_ELSE "else:"
#define CTR_DICT_NOT "not"
#define CTR_DICT_AND "&"
#define CTR_DICT_NOR "!"
#define CTR_DICT_OR "|"
#define CTR_DICT_XOR "?"
#define CTR_DICT_NOTEQUAL "!=:"
#define CTR_DICT_TONUMBER "toNumber"
#define CTR_DICT_TOSTRING "toString"
#define CTR_DICT_EITHEROR "either:or:"
#define CTR_DICT_BOOLEAN "Boolean"
#define CTR_DICT_TOSTEPDO "to:step:do:"
#define CTR_DICT_PLUS "+"
#define CTR_DICT_ADD "+=:"
#define CTR_DICT_MINUS "-"
#define CTR_DICT_SUBTRACT "-=:"
#define CTR_DICT_MULTIPLIER "*"
#define CTR_DICT_BY_SET "by:"
#define CTR_DICT_TIMES "times:"
#define CTR_DICT_MULTIPLY "*=:"
#define CTR_DICT_DIVISION "/"
#define CTR_DICT_DIVIDE "/=:"
#define CTR_DICT_GREATER ">"
#define CTR_DICT_LESS "<"
#define CTR_DICT_LESS_OR_EQUAL "<=:"
#define CTR_DICT_UNEQUALS "!=:"
#define CTR_DICT_MODULO "%"
#define CTR_DICT_FACTORIAL "factorial"
#define CTR_DICT_FLOOR "floor"
#define CTR_DICT_CEIL "ceil"
#define CTR_DICT_ROUND "round"
#define CTR_DICT_ABS "abs"
#define CTR_DICT_SIN "sin"
#define CTR_DICT_COS "cos"
#define CTR_DICT_EXP "exp"
#define CTR_DICT_SQRT "sqrt"
#define CTR_DICT_TAN "tan"
#define CTR_DICT_ATAN "atan"
#define CTR_DICT_LOG "log"
#define CTR_DICT_POWER "toPowerOf:"
#define CTR_DICT_MIN "min"
#define CTR_DICT_MAX "max"
#define CTR_DICT_MIN_ARG "min:"
#define CTR_DICT_MAX_ARG "max:"
#define CTR_DICT_ODD "odd"
#define CTR_DICT_EVEN "even"
#define CTR_DICT_POS "pos"
#define CTR_DICT_NEG "neg"
#define CTR_DICT_TOSTRING "toString"
#define CTR_DICT_TOBOOL "toBoolean"
#define CTR_DICT_BETWEEN "between:and:"
#define CTR_DICT_NUMBER "Number"
#define CTR_DICT_BYTES "bytes"
#define CTR_DICT_LENGTH "length"
#define CTR_DICT_FROM_TO "from:to:"
#define CTR_DICT_FROM_LENGTH "from:length:"
#define CTR_DICT_TRIM "trim"
#define CTR_DICT_LEFT_TRIM "leftTrim"
#define CTR_DICT_RIGHT_TRIM "rightTrim"
#define CTR_DICT_HTML_ESCAPE "htmlEscape"
#define CTR_DICT_AT "at:"
#define CTR_DICT_AT_SYMBOL "@"
#define CTR_DICT_BYTE_AT "byteAt:"
#define CTR_DICT_INDEX_OF "indexOf:"
#define CTR_DICT_LAST_INDEX_OF "lastIndexOf:"
#define CTR_DICT_REPLACE_WITH "replace:with:"
#define CTR_DICT_SPLIT "split:"
#define CTR_DICT_SKIP "skip:"
#define CTR_DICT_APPEND "append:"
#define CTR_DICT_TO_NUMBER "toNumber"
#define CTR_DICT_FIND_PATTERN_DO "findPattern:do:"
#define CTR_DICT_STRING "String"
#define CTR_DICT_RUN "run"
#define CTR_DICT_APPLY_TO "applyTo:"
#define CTR_DICT_APPLY_TO_AND "applyTo:and:"
#define CTR_DICT_SET_VALUE "set:value:"
#define CTR_DICT_ERROR "error:"
#define CTR_DICT_CATCH "catch:"
#define CTR_DICT_WHILE_TRUE "whileTrue:"
#define CTR_DICT_WHILE_FALSE "whileFalse:"
#define CTR_DICT_CODE_BLOCK "CodeBlock"
#define CTR_DICT_PUSH "push:"
#define CTR_DICT_PUSH_SYMBOL ";"
#define CTR_DICT_UNSHIFT "unshift:"
#define CTR_DICT_SHIFT "shift"
#define CTR_DICT_COUNT "count"
#define CTR_DICT_JOIN "join:"
#define CTR_DICT_POP "pop"
#define CTR_DICT_SORT "sort:"
#define CTR_DICT_PUT_AT "put:at:"
#define CTR_DICT_FROM_LENGTH "from:length:"
#define CTR_DICT_MAP "map:"
#define CTR_DICT_EACH "each:"
#define CTR_DICT_SUM "sum"
#define CTR_DICT_PRODUCT "product"
#define CTR_DICT_ARRAY "Array"
#define CTR_DICT_MAP_OBJECT "Map"
#define CTR_DICT_WRITE "write:"
#define CTR_DICT_BRK "brk"
#define CTR_DICT_PEN "Pen"
#define CTR_DICT_PEN_ICON "✎"
#define CTR_DICT_CLOCK_ICON "⏰"
#define CTR_DICT_COMP_ICON "💻"
#define CTR_DICT_DICE_ICON "⚄"
#define CTR_DICT_PATH "path"
#define CTR_DICT_READ "read"
#define CTR_DICT_APPEND "append:"
#define CTR_DICT_EXISTS "exists"
#define CTR_DICT_SIZE "size"
#define CTR_DICT_DELETE "delete"
#define CTR_DICT_INCLUDE "include"
#define CTR_DICT_OPEN "open:"
#define CTR_DICT_CLOSE "close"
#define CTR_DICT_LIST "list:"
#define CTR_DICT_READ_BYTES "readBytes:"
#define CTR_DICT_WRITE_BYTES "writeBytes:"
#define CTR_DICT_SEEK "seek:"
#define CTR_DICT_REWIND "rewind"
#define CTR_DICT_END "end"
#define CTR_DICT_FILE "File"
#define CTR_DICT_ARGUMENT "argument:"
#define CTR_DICT_ARGUMENT_COUNT "argCount"
#define CTR_DICT_WAIT_FOR_INPUT "waitForInput"
#define CTR_DICT_INPUT "input"
#define CTR_DICT_EXIT "exit"
#define CTR_DICT_FLUSH "flush"
#define CTR_DICT_PROGRAM "Program"
#define CTR_DICT_WAIT "wait:"
#define CTR_DICT_TIME "time"
#define CTR_DICT_CLOCK "Clock"
#define CTR_DICT_ROLL "roll"
#define CTR_DICT_DICE "Dice"
#define CTR_DICT_RESPOND_TO "respondTo:"
#define CTR_DICT_RESPOND_TO_AND "respondTo:and:"
#define CTR_DICT_CALL "call:"
#define CTR_DICT_SHELL "shell:"
#define CTR_DICT_SWEEP "sweep"
#define CTR_DICT_DUST "dust"
#define CTR_DICT_OBJECT_COUNT "objectCount"
#define CTR_DICT_KEPT_COUNT "keptCount"
#define CTR_DICT_KEPT_ALLOC "keptAlloc"
#define CTR_DICT_STICKY_COUNT "stickyCount"
#define CTR_DICT_MEMORY_LIMIT "memoryLimit:"
#define CTR_DICT_MODE "mode:"
#define CTR_DICT_BROOM "Broom"
#define CTR_DICT_HASH_WITH_KEY "hashWithKey:"
#define CTR_DICT_OBTAIN "obtain"
#define CTR_DICT_SLURP "Slurp"
#define CTR_DICT_EVAL "eval"
#define CTR_DICT_ESCAPE_QUOTES "escapeQuotes"
#define CTR_DICT_ESCAPE "escape:"
#define CTR_DICT_UNESCAPE "unescape:"
#define CTR_DICT_TO_BYTE "toByte"
#define CTR_DICT_CHARACTERS "characters"
#define CTR_DICT_TO_BYTE_ARRAY "toByteArray"
#define CTR_DICT_SERIALIZE "serialize"
#define CTR_DICT_APPEND_BYTE "appendByte:"
#define CTR_DICT_QUALIFY "qualify:"
#define CTR_DICT_QUALIFICATION "qualification"
#define CTR_DICT_NEW_SET "new:"
#define CTR_DICT_HOURS_ABBR "hrs"
#define CTR_DICT_HOUR "hour"
#define CTR_DICT_SET_HOUR "hour:"
#define CTR_DICT_HOURS "hours"
#define CTR_DICT_MINUTES_ABBR "min"
#define CTR_DICT_SET_MINUTE "minute:"
#define CTR_DICT_MINUTE "minute"
#define CTR_DICT_MINUTES "minutes"
#define CTR_DICT_SECONDS_ABBR "sec"
#define CTR_DICT_SET_SECOND "second:"
#define CTR_DICT_SECOND "second"
#define CTR_DICT_SECONDS "seconds"
#define CTR_DICT_DAY "day"
#define CTR_DICT_SET_DAY "day:"
#define CTR_DICT_DAYS "days"
#define CTR_DICT_WEEK "week"
#define CTR_DICT_SET_WEEK "week:"
#define CTR_DICT_WEEKS "weeks"
#define CTR_DICT_MONTH "month"
#define CTR_DICT_SET_MONTH "month:"
#define CTR_DICT_MONTHS "months"
#define CTR_DICT_YEAR "year"
#define CTR_DICT_SET_YEAR "year:"
#define CTR_DICT_YEARS "years"
#define CTR_DICT_WEEK_DAY "weekDay"
#define CTR_DICT_YEAR_DAY "yearDay"
#define CTR_DICT_ZONE "zone"
#define CTR_DICT_ZONE_SET "zone:"
#define CTR_DICT_ADD_SET "add:"
#define CTR_DICT_SUBTRACT_SET "subtract:"
#define CTR_DICT_LIKE "like:"
#define CTR_DICT_FORMAT "format:"
#define CTR_DICT_FORK "fork:and:"
#define CTR_DICT_LOCK "lock"
#define CTR_DICT_UNLOCK "unlock"
#define CTR_DICT_WARNING "warning:"
#define CTR_DICT_LOG_SET "log:"
#define CTR_DICT_ERROR "error:"
#define CTR_DICT_ALERT "alert:"
#define CTR_DICT_PID "pid"
#define CTR_DICT_CONN_LIMIT "connectionLimit:"
#define CTR_DICT_PORT "port:"
#define CTR_DICT_SERVE "serve:"
#define CTR_DICT_RED "red"
#define CTR_DICT_GREEN "green"
#define CTR_DICT_YELLOW "yellow"
#define CTR_DICT_BLUE "blue"
#define CTR_DICT_MAGENTA "magenta"
#define CTR_DICT_PURPLE "purple"
#define CTR_DICT_CYAN "cyan"
#define CTR_DICT_RESET_COLOR "resetColor"
#define CTR_DICT_TAB "tab"
#define CTR_DICT_LINE "line"
#define CTR_DICT_LAST "last"
#define CTR_DICT_FIRST "first"
#define CTR_DICT_SECOND_LAST "secondLast"
#define CTR_DICT_PADDING_LEFT "paddingLeft:"
#define CTR_DICT_PADDING_RIGHT "paddingRight:"
#define CTR_DICT_FILL_WITH "fill:with:"
#define CTR_DICT_FROM_COMPUTER "fromComputer:"
#define CTR_DICT_COLUMN "column:"
#define CTR_DICT_STR_IPOL_START "❲"
#define CTR_DICT_STR_IPOL_STOP "❳"
#define CTR_DICT_SPLICE "replace:length:with:"
#define CTR_DICT_KEYS "keys"
#define CTR_DICT_VALUES "values"
#define CTR_DICT_ENTRIES "entries"
#define CTR_DICT_COMPARE_SET "compare:"
#define CTR_DICT_HAS "has:"
#define CTR_DICT_COPY "copy"
#define CTR_DICT_CASE_DO "case:do:"
#define CTR_DICT_LIST_OBJECT "List"
#define CTR_DICT_UC_A_Z "A-Z"
#define CTR_DICT_LC_A_Z "a-z"
#define CTR_DICT_PI "pi"
#define CTR_DICT_PI_SYMBOL "𝛑"
#define CTR_DICT_BULLET "•"
#define CTR_DICT_USE_STDERR "useStandardError"
#define CTR_DICT_USE_SYSLOG "useSysLog"
#define CTR_DICT_NEW_ARRAY_AND_PUSH_SYMBOL "←"
#define CTR_DICT_RANDOMIZE_BYTES_WITH_LENGTH "drawFrom:length:"
#define CTR_DICT_ASCII_UPPER_CASE "asciiUpperCase"
#define CTR_DICT_ASCII_LOWER_CASE "asciiLowerCase"
#define CTR_DICT_ASCII_UPPER_CASE_1 "asciiUpperCase1st"
#define CTR_DICT_ASCII_LOWER_CASE_1 "asciiLowerCase1st"
#define CTR_DICT_FORBID_SHELL "forbidShell"
#define CTR_DICT_FORBID_FILE_WRITE "forbidFileWrite"
#define CTR_DICT_FORBID_FILE_READ "forbidFileRead"
#define CTR_DICT_FORBID_FORK "forbidFork"
#define CTR_DICT_FORBID_INCLUDE "forbidInclude"
#define CTR_DICT_SET_REMAINING_MESSAGES "remainingMessages:"
#define CTR_DICT_FIND_PATTERN_DO_OPTIONS "findPattern:do:options:"
#define CTR_DICT_CONTAINS_PATTERN "containsPattern:"
#define CTR_DICT_CONTAINS "contains:"
#define CTR_DICT_APPLY_TO_AND_AND "applyTo:and:and:"
#define CTR_DICT_NEW_ARRAY_AND_PUSH "<"
#define CTR_DICT_WRITE_TEMPLATE_SYMBOL ">"
#define CTR_DICT_PEN_TEMPLATE_SYMBOL "?"
#define CTR_DICT_ENVIRONMENT_VARIABLE "env:"
#define CTR_DICT_SET_ENVIRONMENT_VARIABLE "env:val:"
#define CTR_DICT_ROLL_WITH_SIDES "rollWithSides:"
#define CTR_DICT_RAW_RANDOM_NUMBER "rawRandomNumber"
#define CTR_DICT_RESPOND_TO_AND_AND "respondTo:and:and:"
#define CTR_DICT_GREATER_OR_EQUAL ">=:"
#define CTR_DICT_GREATER_OR_EQUAL_SYMBOL "≥"
#define CTR_DICT_LESS_OR_EQUAL_SYMBOL "≤"
#define CTR_DICT_UNEQUALS_SYMBOL "≠"
#define CTR_DICT_CODEGEN_MAP_NEW "(Map new) "
#define CTR_DICT_CODEGEN_MAP_PUT "put:"
#define CTR_DICT_CODEGEN_MAP_PUT_AT " at:"
#define CTR_DICT_CODEGEN_ARRAY_NEW "Array new "
#define CTR_DICT_CODEGEN_ARRAY_NEW_PUSH "Array ← "