ranger-compiler 2.1.69 → 3.0.3
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/CHANGELOG.md +103 -0
- package/README.md +991 -96
- package/{compiler/Lang.clj → dist/Lang.rgr} +2345 -75
- package/dist/README.md +116 -0
- package/dist/{bin/api.d.ts → api.d.ts} +430 -154
- package/dist/api.js +34345 -0
- package/{lib/Ajax.clj → dist/lib/Ajax.rgr} +1 -1
- package/{lib/CmdParams.clj → dist/lib/CmdParams.rgr} +72 -72
- package/{lib/Crypto.clj → dist/lib/Crypto.rgr} +1 -1
- package/{lib/DOMLib.clj → dist/lib/DOMLib.rgr} +2 -2
- package/{lib/Engine3D.clj → dist/lib/Engine3D.rgr} +1 -1
- package/{lib/ImmutableVector.clj → dist/lib/ImmutableVector.rgr} +364 -364
- package/{lib/IndexedDB.clj → dist/lib/IndexedDB.rgr} +1 -1
- package/{lib/JSON.clj → dist/lib/JSON.rgr} +105 -2
- package/{lib/JinxProcess.clj → dist/lib/JinxProcess.rgr} +3 -3
- package/{lib/Storage.clj → dist/lib/Storage.rgr} +1 -1
- package/{lib/Timers.clj → dist/lib/Timers.rgr} +176 -170
- package/{lib/ViewLib.clj → dist/lib/ViewLib.rgr} +1 -1
- package/dist/lib/lib/ACEEditor.rgr +5 -0
- package/dist/lib/lib/Ajax.rgr +196 -0
- package/dist/lib/lib/CmdParams.rgr +72 -0
- package/dist/lib/lib/Crypto.rgr +90 -0
- package/dist/lib/lib/DOMLib.rgr +307 -0
- package/{examples/3D/Engine3D.clj → dist/lib/lib/Engine3D.rgr} +870 -857
- package/dist/lib/lib/ImmutableVector.rgr +364 -0
- package/dist/lib/lib/IndexedDB.rgr +32 -0
- package/{compiler/JSON.clj → dist/lib/lib/JSON.rgr} +106 -3
- package/dist/lib/lib/JinxProcess.rgr +838 -0
- package/dist/lib/lib/SQL.rgr +44 -0
- package/dist/lib/lib/ServiceLib.rgr +9 -0
- package/dist/lib/lib/Storage.rgr +89 -0
- package/dist/lib/lib/Time.rgr +75 -0
- package/dist/lib/lib/Timers.rgr +176 -0
- package/dist/lib/lib/TypedArrays.rgr +14 -0
- package/dist/lib/lib/ViewLib.rgr +851 -0
- package/dist/lib/lib/WebLib.rgr +47 -0
- package/dist/lib/lib/WebServerLib.rgr +137 -0
- package/{lib/ranger-dir.clj → dist/lib/lib/ranger-dir.rgr} +1 -1
- package/{compiler/stdlib.clj → dist/lib/lib/stdlib.rgr} +42 -19
- package/{lib/stdops.clj → dist/lib/lib/stdops.rgr} +1 -1
- package/dist/lib/ranger-dir.rgr +175 -0
- package/{lib/stdlib.clj → dist/lib/stdlib.rgr} +2 -2
- package/dist/lib/stdops.rgr +168 -0
- package/dist/package.json +47 -0
- package/{bin/output.js → dist/rgrc.js} +15377 -7935
- package/dist/stdops.rgr +168 -0
- package/package.json +196 -38
- package/adventofcode/day1/bin/LambdaSignature1.java +0 -3
- package/adventofcode/day1/bin/LambdaSignature2.java +0 -3
- package/adventofcode/day1/bin/LambdaSignature3.java +0 -3
- package/adventofcode/day1/bin/day1.cpp +0 -124
- package/adventofcode/day1/bin/day1.go +0 -75
- package/adventofcode/day1/bin/day1.js +0 -45
- package/adventofcode/day1/bin/day1.php +0 -46
- package/adventofcode/day1/bin/day1.scala +0 -48
- package/adventofcode/day1/bin/day1.swift +0 -48
- package/adventofcode/day1/bin/day1_part2.cpp +0 -180
- package/adventofcode/day1/bin/day1_part2.go +0 -123
- package/adventofcode/day1/bin/day1_part2.js +0 -76
- package/adventofcode/day1/bin/day1_part2.php +0 -88
- package/adventofcode/day1/bin/day1_part2.scala +0 -81
- package/adventofcode/day1/bin/day1_part2.swift +0 -91
- package/adventofcode/day1/bin/day_one.java +0 -38
- package/adventofcode/day1/bin/day_one_part_two.java +0 -57
- package/adventofcode/day1/bin/operatorsOf.java +0 -37
- package/adventofcode/day1/bin/operatorsOf_5.java +0 -10
- package/adventofcode/day1/bin/operatorsOfboolean_5.java +0 -10
- package/adventofcode/day1/bin/variant.hpp +0 -2416
- package/adventofcode/day1/compile.bat +0 -7
- package/adventofcode/day1/compile2.bat +0 -7
- package/adventofcode/day1/day1.clj +0 -19
- package/adventofcode/day1/day1_part2.clj +0 -43
- package/adventofcode/day1/input1.txt +0 -1
- package/adventofcode/day2/bin/LambdaSignature1.class +0 -0
- package/adventofcode/day2/bin/LambdaSignature1.java +0 -3
- package/adventofcode/day2/bin/LambdaSignature2.class +0 -0
- package/adventofcode/day2/bin/LambdaSignature2.java +0 -3
- package/adventofcode/day2/bin/day2.cpp +0 -133
- package/adventofcode/day2/bin/day2.go +0 -85
- package/adventofcode/day2/bin/day2.js +0 -45
- package/adventofcode/day2/bin/day2.php +0 -59
- package/adventofcode/day2/bin/day2.scala +0 -54
- package/adventofcode/day2/bin/day2.swift +0 -62
- package/adventofcode/day2/bin/day2_part2.cpp +0 -150
- package/adventofcode/day2/bin/day2_part2.go +0 -101
- package/adventofcode/day2/bin/day2_part2.js +0 -54
- package/adventofcode/day2/bin/day2_part2.php +0 -80
- package/adventofcode/day2/bin/day2_part2.scala +0 -68
- package/adventofcode/day2/bin/day2_part2.swift +0 -82
- package/adventofcode/day2/bin/day_two.java +0 -61
- package/adventofcode/day2/bin/day_two_part_two$1$1$1.class +0 -0
- package/adventofcode/day2/bin/day_two_part_two$1$1.class +0 -0
- package/adventofcode/day2/bin/day_two_part_two$1.class +0 -0
- package/adventofcode/day2/bin/day_two_part_two.class +0 -0
- package/adventofcode/day2/bin/day_two_part_two.java +0 -80
- package/adventofcode/day2/bin/operatorsOf.class +0 -0
- package/adventofcode/day2/bin/operatorsOf.java +0 -18
- package/adventofcode/day2/bin/variant.hpp +0 -2416
- package/adventofcode/day2/compile.bat +0 -7
- package/adventofcode/day2/compile2.bat +0 -7
- package/adventofcode/day2/day2.clj +0 -60
- package/adventofcode/day2/day2_part2.clj +0 -69
- package/adventofcode/day2/input1.txt +0 -1
- package/adventofcode/day3/bin/Grid.java +0 -92
- package/adventofcode/day3/bin/GridRow.java +0 -5
- package/adventofcode/day3/bin/LambdaSignature1.java +0 -3
- package/adventofcode/day3/bin/LambdaSignature2.java +0 -3
- package/adventofcode/day3/bin/LambdaSignature3.java +0 -3
- package/adventofcode/day3/bin/day3.cpp +0 -64
- package/adventofcode/day3/bin/day3.go +0 -55
- package/adventofcode/day3/bin/day3.js +0 -42
- package/adventofcode/day3/bin/day3.php +0 -41
- package/adventofcode/day3/bin/day3.scala +0 -52
- package/adventofcode/day3/bin/day3.swift +0 -43
- package/adventofcode/day3/bin/day3_part2.cpp +0 -216
- package/adventofcode/day3/bin/day3_part2.go +0 -188
- package/adventofcode/day3/bin/day3_part2.js +0 -123
- package/adventofcode/day3/bin/day3_part2.php +0 -135
- package/adventofcode/day3/bin/day3_part2.swift +0 -131
- package/adventofcode/day3/bin/day_three_part_two.java +0 -43
- package/adventofcode/day3/bin/day_two.java +0 -42
- package/adventofcode/day3/bin/operatorsOf.java +0 -14
- package/adventofcode/day3/bin/variant.hpp +0 -2416
- package/adventofcode/day3/compile.bat +0 -7
- package/adventofcode/day3/compile2.bat +0 -7
- package/adventofcode/day3/day3.clj +0 -42
- package/adventofcode/day3/day3_part2.clj +0 -112
- package/adventofcode/day4/bin/LambdaSignature1.java +0 -3
- package/adventofcode/day4/bin/day4.cpp +0 -118
- package/adventofcode/day4/bin/day4.go +0 -75
- package/adventofcode/day4/bin/day4.js +0 -40
- package/adventofcode/day4/bin/day4.php +0 -52
- package/adventofcode/day4/bin/day4.scala +0 -47
- package/adventofcode/day4/bin/day4.swift +0 -56
- package/adventofcode/day4/bin/day4_part2.go +0 -129
- package/adventofcode/day4/bin/day4_part2.js +0 -72
- package/adventofcode/day4/bin/day_four.java +0 -41
- package/adventofcode/day4/bin/inputData.java +0 -7
- package/adventofcode/day4/bin/operatorsOf.java +0 -11
- package/adventofcode/day4/bin/variant.hpp +0 -2416
- package/adventofcode/day4/compile.bat +0 -7
- package/adventofcode/day4/compile2.bat +0 -7
- package/adventofcode/day4/day4.clj +0 -32
- package/adventofcode/day4/day4_part2.clj +0 -44
- package/adventofcode/day4/input.clj +0 -519
- package/adventofcode/day4/input.txt +0 -512
- package/bin/api.ts +0 -24471
- package/bin/compiler.ts +0 -24482
- package/compiler/ColorConsole.clj +0 -22
- package/compiler/ContextOperators.clj +0 -75
- package/compiler/FlowEnterVarDef.clj +0 -223
- package/compiler/InputFileSystem.clj +0 -276
- package/compiler/RangerDocs.clj +0 -7
- package/compiler/TFactory.clj +0 -146
- package/compiler/TFiles.clj +0 -23
- package/compiler/TFlow.clj +0 -39
- package/compiler/TNodeFactory.clj +0 -84
- package/compiler/TTypes.clj +0 -188
- package/compiler/VirtualCompiler.clj +0 -800
- package/compiler/bin/ng_Compiler.js +0 -23779
- package/compiler/commonmark_plugin.clj +0 -359
- package/compiler/feat2.bat +0 -2
- package/compiler/feats.bat +0 -9
- package/compiler/feature_tests.clj +0 -192
- package/compiler/index.js +0 -2
- package/compiler/issue_57.clj +0 -25
- package/compiler/makefile_plugin.clj +0 -135
- package/compiler/markdown_plugin.clj +0 -386
- package/compiler/maven_plugin.clj +0 -162
- package/compiler/ng_AndroidPageWriter.clj +0 -299
- package/compiler/ng_CodeNode.clj +0 -756
- package/compiler/ng_CodeNodeCompilerExtensions.clj +0 -839
- package/compiler/ng_Compiler.clj +0 -49
- package/compiler/ng_CompilerGeneric.clj +0 -260
- package/compiler/ng_CompilerOrig.clj +0 -854
- package/compiler/ng_DictNode.clj +0 -346
- package/compiler/ng_DictNode2.clj +0 -316
- package/compiler/ng_Execute.clj +0 -138
- package/compiler/ng_Execute1.clj +0 -129
- package/compiler/ng_FlowWork.clj +0 -3951
- package/compiler/ng_LiveCompiler.clj +0 -1109
- package/compiler/ng_RagnerJavaScriptClassWriter.clj +0 -402
- package/compiler/ng_RangerActiveOperators.clj +0 -86
- package/compiler/ng_RangerAppClassDesc.clj +0 -400
- package/compiler/ng_RangerAppEnums.clj +0 -86
- package/compiler/ng_RangerAppFunctionDesc.clj +0 -127
- package/compiler/ng_RangerAppMessages.clj +0 -15
- package/compiler/ng_RangerAppOperatorDesc.clj +0 -20
- package/compiler/ng_RangerAppParamDesc.clj +0 -388
- package/compiler/ng_RangerAppWriterContext.clj +0 -1793
- package/compiler/ng_RangerArgMatch.clj +0 -638
- package/compiler/ng_RangerCSharpClassWriter.clj +0 -484
- package/compiler/ng_RangerCppClassWriter.clj +0 -1023
- package/compiler/ng_RangerDocGenerator.clj +0 -305
- package/compiler/ng_RangerFlowParser.clj +0 -4992
- package/compiler/ng_RangerFlowParserOrig.clj +0 -4002
- package/compiler/ng_RangerGenericClassWriter.clj +0 -573
- package/compiler/ng_RangerGolangClassWriter.clj +0 -1766
- package/compiler/ng_RangerImmutableExtension.clj +0 -77
- package/compiler/ng_RangerJava7ClassWriter.clj +0 -961
- package/compiler/ng_RangerJavaScriptClassWriter.clj +0 -1042
- package/compiler/ng_RangerKotlinClassWriter.clj +0 -372
- package/compiler/ng_RangerLanguageWriters.clj +0 -14
- package/compiler/ng_RangerLispParser.clj +0 -873
- package/compiler/ng_RangerPHPClassWriter.clj +0 -643
- package/compiler/ng_RangerPlugin.clj +0 -41
- package/compiler/ng_RangerRangerClassWriter.clj +0 -357
- package/compiler/ng_RangerRustClassWriter.clj +0 -420
- package/compiler/ng_RangerScalaClassWriter.clj +0 -818
- package/compiler/ng_RangerSerializeClass.clj +0 -502
- package/compiler/ng_RangerServiceBuilder.clj +0 -63
- package/compiler/ng_RangerSwift3ClassWriter.clj +0 -809
- package/compiler/ng_RangerSwiftClassWriter.clj +0 -0
- package/compiler/ng_RangerTypeClass.clj +0 -45
- package/compiler/ng_SourceParser.clj +0 -241
- package/compiler/ng_SourceParser2.clj +0 -214
- package/compiler/ng_WebPageWriter.clj +0 -39
- package/compiler/ng_jsonParser.clj +0 -340
- package/compiler/ng_p_test.clj +0 -1711
- package/compiler/ng_parser.clj +0 -911
- package/compiler/ng_parser2.clj +0 -735
- package/compiler/ng_parser2_backup.clj +0 -1679
- package/compiler/ng_parser_backup.clj +0 -886
- package/compiler/ng_parser_ok.clj +0 -1718
- package/compiler/ng_parser_ok2.clj +0 -1717
- package/compiler/ng_parser_std_match.clj +0 -687
- package/compiler/ng_parser_std_match2.clj +0 -1012
- package/compiler/ng_parser_v2.clj +0 -1251
- package/compiler/ng_ui.clj +0 -403
- package/compiler/ng_ui_test.clj +0 -18
- package/compiler/ng_writer.clj +0 -338
- package/compiler/ng_xmlParser.clj +0 -472
- package/compiler/ng_xmlParser2.clj +0 -317
- package/compiler/ng_xmlParser3.clj +0 -251
- package/compiler/opdoc.bat +0 -4
- package/compiler/operators.md +0 -290
- package/compiler/p.bat +0 -4
- package/compiler/package.json +0 -10
- package/compiler/pcmd.bat +0 -4
- package/compiler/pcmd2.bat +0 -3
- package/compiler/plaintext_plugin.clj +0 -69
- package/compiler/plugin.bat +0 -19
- package/compiler/plugin2.bat +0 -4
- package/compiler/plugin_app.bat +0 -3
- package/compiler/plugin_apps.clj +0 -27
- package/compiler/plugins.bat +0 -10
- package/compiler/reveal_plugin.clj +0 -409
- package/compiler/simplePlugin.clj +0 -780
- package/compiler/t.bat +0 -3
- package/compiler/test_any.clj +0 -43
- package/compiler/test_call.clj +0 -141
- package/compiler/test_chain.clj +0 -79
- package/compiler/test_json.clj +0 -10
- package/compiler/test_lambda.clj +0 -153
- package/compiler/test_pcmd.clj +0 -32
- package/compiler/test_pcmd2.clj +0 -29
- package/compiler/test_plugin.clj +0 -237
- package/compiler/test_readfile.clj +0 -13
- package/compiler/test_reveal.clj +0 -19
- package/compiler/test_slides.clj +0 -312
- package/compiler/test_types.clj +0 -143
- package/compiler/test_types2.clj +0 -49
- package/compiler/test_types3.clj +0 -53
- package/compiler/test_var.clj +0 -40
- package/compiler/tonpm.bat +0 -14
- package/compiler/tonpm2.bat +0 -12
- package/compiler/ui_plugin.clj +0 -507
- package/compiler/ui_plugin2.clj +0 -427
- package/compiler/update-git.bat +0 -3
- package/compiler/vcomp.bat +0 -4
- package/compiler/viewbuilder_Android.clj +0 -176
- package/compiler/viewbuilder_Web.clj +0 -105
- package/dist/bin/api.js +0 -32422
- package/dist/bin/api.js.map +0 -1
- package/dist/bin/compiler.d.ts +0 -1638
- package/dist/bin/compiler.js +0 -32444
- package/dist/bin/compiler.js.map +0 -1
- package/examples/3D/bin/test_3d.js +0 -329
- package/examples/3D/test_3d.clj +0 -385
- package/examples/EVGColor/EVGColor.clj +0 -310
- package/examples/EVGColor/EVGColorContext.clj +0 -176
- package/examples/EVGColor/bin/EVGColor.js +0 -286
- package/examples/EVGColor/bin/minimized.js +0 -286
- package/examples/SVGPath/SVGPath.clj +0 -625
- package/examples/SVGPath/Vec2.clj +0 -103
- package/examples/SVGPath/bin/SVGPath.cpp +0 -887
- package/examples/SVGPath/bin/SVGPath.js +0 -682
- package/examples/SVGPath/bin/minimized.js +0 -578
- package/examples/SVGPath/bin/variant.hpp +0 -2416
- package/examples/minification/Vec2.clj +0 -103
- package/examples/minification/bin/minified.js +0 -44
- package/examples/minification/bin/test.js +0 -117
- package/examples/minification/test.clj +0 -13
- package/fiddle/VirtualCompiler.js +0 -23495
- package/fiddle/browser_editor.js +0 -13240
- package/fiddle/compileEnv.js +0 -1
- package/fiddle/compileEnv.json +0 -1
- package/fiddle/lang_data.js +0 -1
- package/index.html +0 -18
- package/native/httpd/HttpTester.clj +0 -33
- package/native/httpd/RangerWebService.clj +0 -81
- package/operators.md +0 -290
- package/tsconfig.json +0 -29
- package/versions/cpp/compiler.cpp +0 -15032
- package/versions/es6/compiler.js +0 -12860
- package/versions/go/compiler.go +0 -21338
- package/versions/java/AfterCodeNode.java +0 -4
- package/versions/java/ClassJoinPoint.java +0 -6
- package/versions/java/CodeFile.java +0 -42
- package/versions/java/CodeFileSystem.java +0 -72
- package/versions/java/CodeNode.java +0 -807
- package/versions/java/CodeSlice.java +0 -13
- package/versions/java/CodeWriter.java +0 -185
- package/versions/java/ColorConsole.java +0 -8
- package/versions/java/CompilerInterface.java +0 -213
- package/versions/java/DictNode.java +0 -353
- package/versions/java/LiveCompiler.java +0 -772
- package/versions/java/NodeEvalState.java +0 -24
- package/versions/java/OpFindResult.java +0 -6
- package/versions/java/RangerAppArrayValue.java +0 -7
- package/versions/java/RangerAppClassDesc.java +0 -217
- package/versions/java/RangerAppEnum.java +0 -14
- package/versions/java/RangerAppFunctionDesc.java +0 -20
- package/versions/java/RangerAppHashValue.java +0 -11
- package/versions/java/RangerAppInterfaceImpl.java +0 -6
- package/versions/java/RangerAppMethodVariants.java +0 -6
- package/versions/java/RangerAppParamDesc.java +0 -321
- package/versions/java/RangerAppTodo.java +0 -6
- package/versions/java/RangerAppValue.java +0 -10
- package/versions/java/RangerAppWriterContext.java +0 -800
- package/versions/java/RangerArgMatch.java +0 -317
- package/versions/java/RangerBackReference.java +0 -7
- package/versions/java/RangerCSharpClassWriter.java +0 -287
- package/versions/java/RangerCompilerMessage.java +0 -9
- package/versions/java/RangerCppClassWriter.java +0 -725
- package/versions/java/RangerFlowParser.java +0 -2142
- package/versions/java/RangerGenericClassWriter.java +0 -367
- package/versions/java/RangerGolangClassWriter.java +0 -1379
- package/versions/java/RangerJava7ClassWriter.java +0 -652
- package/versions/java/RangerJavaScriptClassWriter.java +0 -305
- package/versions/java/RangerKotlinClassWriter.java +0 -380
- package/versions/java/RangerLispParser.java +0 -845
- package/versions/java/RangerNodeValue.java +0 -9
- package/versions/java/RangerPHPClassWriter.java +0 -527
- package/versions/java/RangerParamEventHandler.java +0 -6
- package/versions/java/RangerParamEventList.java +0 -5
- package/versions/java/RangerParamEventMap.java +0 -27
- package/versions/java/RangerRangerClassWriter.java +0 -268
- package/versions/java/RangerRefForce.java +0 -7
- package/versions/java/RangerScalaClassWriter.java +0 -365
- package/versions/java/RangerSerializeClass.java +0 -148
- package/versions/java/RangerSwift3ClassWriter.java +0 -548
- package/versions/java/RangerTypeClass.java +0 -17
- package/versions/java/SourceCode.java +0 -65
- package/versions/php/compiler.php +0 -13830
- package/versions/swift3/compiler.swift +0 -12542
- /package/{lib/ACEEditor.clj → dist/lib/ACEEditor.rgr} +0 -0
- /package/{lib/SQL.clj → dist/lib/SQL.rgr} +0 -0
- /package/{lib/ServiceLib.clj → dist/lib/ServiceLib.rgr} +0 -0
- /package/{lib/Time.clj → dist/lib/Time.rgr} +0 -0
- /package/{lib/TypedArrays.clj → dist/lib/TypedArrays.rgr} +0 -0
- /package/{lib/WebLib.clj → dist/lib/WebLib.rgr} +0 -0
- /package/{lib/WebServerLib.clj → dist/lib/WebServerLib.rgr} +0 -0
package/compiler/ng_Compiler.clj
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
; def opts ([] "name" "version" "description" "author" "license")
|
|
2
|
-
|
|
3
|
-
flag es6 (
|
|
4
|
-
version "2.1.67"
|
|
5
|
-
)
|
|
6
|
-
|
|
7
|
-
flag npm (
|
|
8
|
-
version "2.1.67"
|
|
9
|
-
name "ranger-lib"
|
|
10
|
-
description "Cross-language compiler and build tool"
|
|
11
|
-
author "Tero Tolonen"
|
|
12
|
-
license "MIT"
|
|
13
|
-
)
|
|
14
|
-
|
|
15
|
-
flag nodecli (
|
|
16
|
-
name "ranger-compiler"
|
|
17
|
-
)
|
|
18
|
-
|
|
19
|
-
plugin.md "plugins.md" {
|
|
20
|
-
h2 'How to push code from plugins to the Ranger compiler'
|
|
21
|
-
h3 'generate_ast phase'
|
|
22
|
-
p 'Before code gets typechecke during the generate_ast phase you can use'
|
|
23
|
-
code '(source_code:string node:CodeNode wr:CodeWriter )'
|
|
24
|
-
p 'to push code before it is statically analyzed'
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
Import "VirtualCompiler.clj"
|
|
28
|
-
|
|
29
|
-
class CompilerInterface {
|
|
30
|
-
|
|
31
|
-
static fn create_env:InputEnv () {
|
|
32
|
-
|
|
33
|
-
def env (new InputEnv)
|
|
34
|
-
env.use_real = true
|
|
35
|
-
env.commandLine = (new CmdParams)
|
|
36
|
-
env.commandLine.collect()
|
|
37
|
-
return env
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
static fn main () {
|
|
42
|
-
def env (CompilerInterface.create_env())
|
|
43
|
-
def o (new VirtualCompiler)
|
|
44
|
-
def res (o.run( env ))
|
|
45
|
-
if( has res.target_dir) {
|
|
46
|
-
res.fileSystem.saveTo(res.target_dir false)
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
(
|
|
2
|
-
(Import "writer.clj")
|
|
3
|
-
(Import "DictNode.clj")
|
|
4
|
-
(Import "CodeNode.clj")
|
|
5
|
-
|
|
6
|
-
( CreateClass SourceCode:void (
|
|
7
|
-
(def code:string)
|
|
8
|
-
(def filename:string "")
|
|
9
|
-
(def lines:[string])
|
|
10
|
-
|
|
11
|
-
(Constructor (code_string:string)
|
|
12
|
-
(
|
|
13
|
-
(= code code_string)
|
|
14
|
-
(= lines (strsplit code_string "\n"))
|
|
15
|
-
)
|
|
16
|
-
)
|
|
17
|
-
|
|
18
|
-
( PublicMethod getLineString:string (line_index:int) (
|
|
19
|
-
(if (> (array_length lines) line_index)
|
|
20
|
-
(return (itemAt lines line_index))
|
|
21
|
-
)
|
|
22
|
-
(return "")
|
|
23
|
-
))
|
|
24
|
-
|
|
25
|
-
( PublicMethod getLine:int (sp:int) (
|
|
26
|
-
(def cnt:int 0)
|
|
27
|
-
(for lines str:string i
|
|
28
|
-
(
|
|
29
|
-
(= cnt (+ cnt (+ (strlen str) 1)))
|
|
30
|
-
(if (> cnt sp)
|
|
31
|
-
(return i)
|
|
32
|
-
)
|
|
33
|
-
)
|
|
34
|
-
)
|
|
35
|
-
(return -1)
|
|
36
|
-
))
|
|
37
|
-
|
|
38
|
-
)
|
|
39
|
-
)
|
|
40
|
-
|
|
41
|
-
; the code execution state and information
|
|
42
|
-
( CreateClass CodeExecState:void (
|
|
43
|
-
|
|
44
|
-
(def is_running:boolean false)
|
|
45
|
-
(def is_ready:boolean false)
|
|
46
|
-
|
|
47
|
-
(def expand_args:boolean false)
|
|
48
|
-
(def param_index:int 0)
|
|
49
|
-
(def child_index:int 0)
|
|
50
|
-
|
|
51
|
-
(def value_type:int RangerNodeType.NoType)
|
|
52
|
-
|
|
53
|
-
; evaluated value for the node
|
|
54
|
-
(def double_value:double)
|
|
55
|
-
(def string_value:string)
|
|
56
|
-
(def int_value:int)
|
|
57
|
-
(def boolean_value:boolean)
|
|
58
|
-
(def expression_value:CodeNode)
|
|
59
|
-
|
|
60
|
-
(def ctx:RangerContext)
|
|
61
|
-
|
|
62
|
-
)
|
|
63
|
-
)
|
|
64
|
-
|
|
65
|
-
; possible context events... writing new values for the variables
|
|
66
|
-
( CreateClass RangerContextEvent (
|
|
67
|
-
|
|
68
|
-
(def ctx:RangerContext)
|
|
69
|
-
(def var_name:string)
|
|
70
|
-
|
|
71
|
-
( PublicMethod fire:void ( ) (
|
|
72
|
-
;
|
|
73
|
-
))
|
|
74
|
-
)
|
|
75
|
-
)
|
|
76
|
-
|
|
77
|
-
( CreateClass RangerContextEventContainer (
|
|
78
|
-
(def listeners:[RangerContextEvent])
|
|
79
|
-
|
|
80
|
-
( PublicMethod fire:void () (
|
|
81
|
-
(for listeners observer:RangerContextEvent i
|
|
82
|
-
(call observer fire ( ))
|
|
83
|
-
)
|
|
84
|
-
))
|
|
85
|
-
)
|
|
86
|
-
)
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
; the context is essential for all the client applications
|
|
90
|
-
; one of the things the context should have is to have also possibility
|
|
91
|
-
; to have events.
|
|
92
|
-
( CreateClass RangerContext (
|
|
93
|
-
|
|
94
|
-
(def parent:RangerContext @weak(true))
|
|
95
|
-
|
|
96
|
-
(def defined_values:[string:boolean])
|
|
97
|
-
(def set_values:[string:boolean])
|
|
98
|
-
(def set_types:[string:int])
|
|
99
|
-
|
|
100
|
-
(def int_values:[string:int])
|
|
101
|
-
(def str_values:[string:string])
|
|
102
|
-
(def double_values:[string:double])
|
|
103
|
-
(def bool_values:[string:double])
|
|
104
|
-
|
|
105
|
-
; possible dictionaries in the context.
|
|
106
|
-
(def dict_values:[string:DictNode])
|
|
107
|
-
|
|
108
|
-
; ---------------------------------------------
|
|
109
|
-
; TODO: think if code_values could be enough ?
|
|
110
|
-
|
|
111
|
-
; if context defines runnable functions
|
|
112
|
-
(def code_values:[string:CodeNode])
|
|
113
|
-
|
|
114
|
-
(def events:[string:RangerContextEventContainer])
|
|
115
|
-
|
|
116
|
-
( PublicMethod fork:RangerContext () (
|
|
117
|
-
(def new_ctx:RangerContext (new RangerContext ()))
|
|
118
|
-
(= new_ctx.parent this)
|
|
119
|
-
(return new_ctx)
|
|
120
|
-
))
|
|
121
|
-
|
|
122
|
-
; is of type RangerNodeType
|
|
123
|
-
( PublicMethod getTypeOf:int ( key:string) (
|
|
124
|
-
(if (has defined_values key )
|
|
125
|
-
(
|
|
126
|
-
(return (get set_types key))
|
|
127
|
-
)
|
|
128
|
-
(
|
|
129
|
-
; maybe parent context has the key
|
|
130
|
-
(if (!null? parent)
|
|
131
|
-
(
|
|
132
|
-
(return (call parent getTypeOf (key)))
|
|
133
|
-
)
|
|
134
|
-
)
|
|
135
|
-
)
|
|
136
|
-
)
|
|
137
|
-
(return RangerNodeType.NoType)
|
|
138
|
-
))
|
|
139
|
-
|
|
140
|
-
( PublicMethod isString:boolean ( key:string) (
|
|
141
|
-
(if (has set_values key)
|
|
142
|
-
( return (== (get set_types key) RangerNodeType.String))
|
|
143
|
-
)
|
|
144
|
-
(if (!null? parent)
|
|
145
|
-
(return (call parent isString (key)))
|
|
146
|
-
)
|
|
147
|
-
(return false)
|
|
148
|
-
))
|
|
149
|
-
|
|
150
|
-
( PublicMethod isDouble:boolean ( key:string) (
|
|
151
|
-
(if (has set_values key)
|
|
152
|
-
( return (== (get set_types key) RangerNodeType.Double))
|
|
153
|
-
)
|
|
154
|
-
(if (!null? parent)
|
|
155
|
-
(return (call parent isDouble (key)))
|
|
156
|
-
)
|
|
157
|
-
(return false)
|
|
158
|
-
))
|
|
159
|
-
|
|
160
|
-
( PublicMethod isInt:boolean ( key:string) (
|
|
161
|
-
(if (has set_values key)
|
|
162
|
-
( return (== (get set_types key) RangerNodeType.Integer))
|
|
163
|
-
)
|
|
164
|
-
(if (!null? parent)
|
|
165
|
-
(return (call parent isInt (key)))
|
|
166
|
-
)
|
|
167
|
-
(return false)
|
|
168
|
-
))
|
|
169
|
-
|
|
170
|
-
( PublicMethod isBoolean:boolean ( key:string) (
|
|
171
|
-
(if (has set_values key)
|
|
172
|
-
( return (== (get set_types key) RangerNodeType.Boolean))
|
|
173
|
-
)
|
|
174
|
-
(if (!null? parent)
|
|
175
|
-
(return (call parent isBoolean (key)))
|
|
176
|
-
)
|
|
177
|
-
(return false)
|
|
178
|
-
))
|
|
179
|
-
|
|
180
|
-
( PublicMethod isDefinedString:boolean ( key:string) (
|
|
181
|
-
(if (has defined_values key)
|
|
182
|
-
( return (== (get set_types key) RangerNodeType.String))
|
|
183
|
-
)
|
|
184
|
-
(if (!null? parent)
|
|
185
|
-
(return (call parent isString (key)))
|
|
186
|
-
)
|
|
187
|
-
(return false)
|
|
188
|
-
))
|
|
189
|
-
|
|
190
|
-
( PublicMethod isDefinedDouble:boolean ( key:string) (
|
|
191
|
-
(if (has defined_values key)
|
|
192
|
-
( return (== (get set_types key) RangerNodeType.Double))
|
|
193
|
-
)
|
|
194
|
-
(if (!null? parent)
|
|
195
|
-
(return (call parent isDefinedDouble (key)))
|
|
196
|
-
)
|
|
197
|
-
(return false)
|
|
198
|
-
))
|
|
199
|
-
|
|
200
|
-
( PublicMethod isDefinedInt:boolean ( key:string) (
|
|
201
|
-
(if (has defined_values key)
|
|
202
|
-
( return (== (get set_types key) RangerNodeType.Integer))
|
|
203
|
-
)
|
|
204
|
-
(if (!null? parent)
|
|
205
|
-
(return (call parent isDefinedInt (key)))
|
|
206
|
-
)
|
|
207
|
-
(return false)
|
|
208
|
-
))
|
|
209
|
-
|
|
210
|
-
( PublicMethod isDefinedBoolean:boolean ( key:string) (
|
|
211
|
-
(if (has defined_values key)
|
|
212
|
-
( return (== (get set_types key) RangerNodeType.Boolean))
|
|
213
|
-
)
|
|
214
|
-
(if (!null? parent)
|
|
215
|
-
(return (call parent isDefinedBoolean (key)))
|
|
216
|
-
)
|
|
217
|
-
(return false)
|
|
218
|
-
))
|
|
219
|
-
|
|
220
|
-
; varible definitions
|
|
221
|
-
( PublicMethod defineString:void ( key:string) (
|
|
222
|
-
(set set_types key RangerNodeType.String)
|
|
223
|
-
(set defined_values key true)
|
|
224
|
-
))
|
|
225
|
-
|
|
226
|
-
( PublicMethod defineInt:void ( key:string) (
|
|
227
|
-
(set set_types key RangerNodeType.Integer)
|
|
228
|
-
(set defined_values key true)
|
|
229
|
-
))
|
|
230
|
-
|
|
231
|
-
( PublicMethod defineBoolean:void ( key:string) (
|
|
232
|
-
(set set_types key RangerNodeType.Boolean)
|
|
233
|
-
(set defined_values key true)
|
|
234
|
-
))
|
|
235
|
-
|
|
236
|
-
( PublicMethod defineDouble:void ( key:string) (
|
|
237
|
-
(set set_types key RangerNodeType.Boolean)
|
|
238
|
-
(set defined_values key true)
|
|
239
|
-
))
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
( PublicMethod setString:void ( key:string value:string) (
|
|
243
|
-
; TODO: throw error if string is not really defined...
|
|
244
|
-
(set str_values key value)
|
|
245
|
-
))
|
|
246
|
-
|
|
247
|
-
( PublicMethod getString:string ( key:string) (
|
|
248
|
-
(if (has str_values key)
|
|
249
|
-
(return (get str_values key))
|
|
250
|
-
(if (!null? parent)
|
|
251
|
-
(return (call parent getString (key)))
|
|
252
|
-
(return "")
|
|
253
|
-
)
|
|
254
|
-
)
|
|
255
|
-
))
|
|
256
|
-
|
|
257
|
-
)
|
|
258
|
-
)
|
|
259
|
-
|
|
260
|
-
)
|