ranger-compiler 2.1.70 → 3.0.4
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 +114 -0
- package/README.md +956 -133
- 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/{compiler/bin/output.js → dist/rgrc.js} +15377 -7936
- package/dist/stdops.rgr +168 -0
- package/package.json +196 -39
- 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/bin/output.js +0 -23819
- 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 -807
- 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 -1040
- 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/compiler.d.ts +0 -1638
- package/dist/bin/compiler.js +0 -32444
- 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/SVGPath.ts +0 -711
- 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/t.bat
DELETED
package/compiler/test_any.clj
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
Import "ng_Compiler.clj"
|
|
3
|
-
|
|
4
|
-
class any_tester {
|
|
5
|
-
|
|
6
|
-
fn myFn ( x : Any ) {
|
|
7
|
-
case x str:string {
|
|
8
|
-
print " it was " + str
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
static fn main () {
|
|
13
|
-
def o (new any_tester)
|
|
14
|
-
o.myFn("Hello")
|
|
15
|
-
def ss (o.fnsig('int' 'int' 'int'))
|
|
16
|
-
print (ss)
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
static fn map_node_args:CodeNode (name:string tn@(temp):CodeNode ) {
|
|
20
|
-
def fnArg (r.vref name)
|
|
21
|
-
if tn.expression {
|
|
22
|
-
fnArg = (r.vref 'fn')
|
|
23
|
-
fnArg.expression_value = tn
|
|
24
|
-
fnArg.value_type = RangerNodeType.ExpressionType
|
|
25
|
-
} {
|
|
26
|
-
fnArg = tn
|
|
27
|
-
}
|
|
28
|
-
return fnArg
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
fn fnsig:string ( p1:Any p2:Any p3:Any) {
|
|
32
|
-
|
|
33
|
-
case p1 tn:string {
|
|
34
|
-
return tn
|
|
35
|
-
}
|
|
36
|
-
case p1 tn:CodeNode {
|
|
37
|
-
return 'CodeNode'
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
return "OK"
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
}
|
package/compiler/test_call.clj
DELETED
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
; Import "ng_Compiler.clj"
|
|
3
|
-
|
|
4
|
-
class third_obj {
|
|
5
|
-
def name '3rd Object'
|
|
6
|
-
fn foobar () {
|
|
7
|
-
print "Foobar was called!!!"
|
|
8
|
-
}
|
|
9
|
-
fn bar:string () {
|
|
10
|
-
return "Bar was called!!!"
|
|
11
|
-
}
|
|
12
|
-
fn getAnon:(_:string ()) () {
|
|
13
|
-
return (fn:string () {
|
|
14
|
-
return 'getAnon function returning something'
|
|
15
|
-
})
|
|
16
|
-
}
|
|
17
|
-
fn simpleAnon:(_:string ()) () {
|
|
18
|
-
return (fn:string () {
|
|
19
|
-
print "------------------------------------------"
|
|
20
|
-
print "Simple anonymous function was called !!!!"
|
|
21
|
-
print "------------------------------------------"
|
|
22
|
-
return 'getAnon function returning something'
|
|
23
|
-
})
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
class second_obj {
|
|
28
|
-
def name 'name of second object...'
|
|
29
|
-
def someLambda:(_:string ())
|
|
30
|
-
def sub2:third_obj (new third_obj)
|
|
31
|
-
|
|
32
|
-
def someList:[string] ([] 'A' 'B' 'C')
|
|
33
|
-
fn getName:string () {
|
|
34
|
-
return this.name
|
|
35
|
-
}
|
|
36
|
-
fn getIntVal:int () {
|
|
37
|
-
return 1234
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
fn copy:second_obj () {
|
|
41
|
-
return (new second_obj())
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
operator type:third_obj all {
|
|
46
|
-
fn funfun () {
|
|
47
|
-
print "Funfun for third_obj with name " + self.name
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
operator type:second_obj all {
|
|
52
|
-
fn funfun () {
|
|
53
|
-
print "Funfun for second_obj with sub2 with name " + self.sub2.name
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
class any_tester {
|
|
59
|
-
|
|
60
|
-
def someProp "GOOD!"
|
|
61
|
-
def optString:string
|
|
62
|
-
|
|
63
|
-
def subObj:second_obj (new second_obj)
|
|
64
|
-
|
|
65
|
-
fn myFn ( x : Any ) {
|
|
66
|
-
case x str:string {
|
|
67
|
-
print " it was " + str
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
fn callFn (cb:(_:string ())) {
|
|
72
|
-
print ('CallFn gets method and calls : ' + (cb()) )
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
fn callFn2 (cb:(_:int ())) {
|
|
76
|
-
print ('CallFn2 gets method and calls : ' + (cb()) )
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
fn askValue:string ( x:string ) {
|
|
80
|
-
return "askValue: " + x
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
fn getObj:second_obj () {
|
|
84
|
-
return (new second_obj)
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
static fn main () {
|
|
88
|
-
|
|
89
|
-
def o (new any_tester)
|
|
90
|
-
o.myFn("Hello")
|
|
91
|
-
(new any_tester).myFn('The second Hello using obj')
|
|
92
|
-
def someString "abcd"
|
|
93
|
-
|
|
94
|
-
print (first someString)
|
|
95
|
-
print (at someString 2)
|
|
96
|
-
|
|
97
|
-
def str ((new any_tester).askValue('Asking the value here...'))
|
|
98
|
-
print str
|
|
99
|
-
print ((new any_tester).askValue('I like...'))
|
|
100
|
-
print (((new any_tester).getObj()).getName())
|
|
101
|
-
|
|
102
|
-
print ((new any_tester).subObj.sub2.name)
|
|
103
|
-
((new any_tester).subObj.sub2.foobar())
|
|
104
|
-
|
|
105
|
-
( ((new any_tester).subObj.sub2.simpleAnon()) ())
|
|
106
|
-
|
|
107
|
-
print ((new any_tester).subObj.sub2.bar())
|
|
108
|
-
|
|
109
|
-
o.optString = 'Optional OK'
|
|
110
|
-
|
|
111
|
-
print (property o someProp)
|
|
112
|
-
print (unwrap (property o optString))
|
|
113
|
-
print (property (new second_obj) name)
|
|
114
|
-
print (property ((new any_tester).getObj()) name)
|
|
115
|
-
|
|
116
|
-
print "automatially transferred : " + (((new any_tester).getObj()).name)
|
|
117
|
-
|
|
118
|
-
o.callFn( ( ((new any_tester).getObj()).getName ) )
|
|
119
|
-
o.callFn( ( ((new any_tester).getObj()).sub2.bar ) )
|
|
120
|
-
o.callFn( ( ((new any_tester).getObj()).sub2.getAnon() ) )
|
|
121
|
-
|
|
122
|
-
; --> any type can implement "funfun"
|
|
123
|
-
funfun ( ((new any_tester).getObj()) )
|
|
124
|
-
funfun ( ((new any_tester).getObj()).sub2 )
|
|
125
|
-
|
|
126
|
-
o.callFn({
|
|
127
|
-
return 'Simple way'
|
|
128
|
-
})
|
|
129
|
-
o.callFn2( ( ((new any_tester).getObj()).getIntVal ) )
|
|
130
|
-
print "traditional property access == " + (o.subObj.name)
|
|
131
|
-
|
|
132
|
-
def list ((new second_obj).someList)
|
|
133
|
-
list.forEach({
|
|
134
|
-
print item
|
|
135
|
-
})
|
|
136
|
-
|
|
137
|
-
(((new second_obj).someList).forEach({
|
|
138
|
-
print item
|
|
139
|
-
}))
|
|
140
|
-
}
|
|
141
|
-
}
|
package/compiler/test_chain.clj
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
class mySecondClass {
|
|
3
|
-
def name "Second Class"
|
|
4
|
-
def name2 "--> the name 2"
|
|
5
|
-
fn bar () {
|
|
6
|
-
print "Bar called"
|
|
7
|
-
}
|
|
8
|
-
fn getname:string() {
|
|
9
|
-
return "--- "
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
class myClass {
|
|
13
|
-
def name "myClassObj"
|
|
14
|
-
def list1:[string] ([] "A" "B" "C" "D")
|
|
15
|
-
fn foo () {
|
|
16
|
-
print "Foo called!!!"
|
|
17
|
-
}
|
|
18
|
-
fn second:mySecondClass () {
|
|
19
|
-
return (new mySecondClass)
|
|
20
|
-
}
|
|
21
|
-
fn show (str:string) {
|
|
22
|
-
print "SHOW " + str
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
class test_chain {
|
|
26
|
-
|
|
27
|
-
static fn main () {
|
|
28
|
-
|
|
29
|
-
def list ([] "a" "b" "c")
|
|
30
|
-
print "first call to main"
|
|
31
|
-
|
|
32
|
-
new myClass().foo()
|
|
33
|
-
new myClass().second().bar()
|
|
34
|
-
|
|
35
|
-
; --> simple transformation of any call
|
|
36
|
-
(call ( (new myClass()).list1) forEach ({
|
|
37
|
-
print item
|
|
38
|
-
}))
|
|
39
|
-
|
|
40
|
-
; print ( new myClass().second().name )
|
|
41
|
-
|
|
42
|
-
; def n ((((new myClass())).second()).name)
|
|
43
|
-
def n (new myClass().second().name)
|
|
44
|
-
print "Here : " + n
|
|
45
|
-
print "Again : " + (new myClass().second().name)
|
|
46
|
-
|
|
47
|
-
; extra parenthesis there still: .show(())
|
|
48
|
-
new myClass().show( (new myClass().second().name) )
|
|
49
|
-
new myClass().show( new myClass().second().name )
|
|
50
|
-
|
|
51
|
-
print ( new myClass().second().name2 )
|
|
52
|
-
def obj2 (new myClass())
|
|
53
|
-
|
|
54
|
-
; print ( obj2.second().name2 + obj2.second().name )
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
; THIS was translated...
|
|
58
|
-
; (call: ((new: myClass: ())) show: ((call: ((new: myClass: ())) second: ()) .name:))
|
|
59
|
-
|
|
60
|
-
(call ((new myClass ())) show ( ((call ((new myClass ())) second ()) .name) ) )
|
|
61
|
-
; (call ((new myClass ())) show ( (call ((new myClass ())) second ()) .name ) )
|
|
62
|
-
|
|
63
|
-
; ((new myClass()).foo())
|
|
64
|
-
|
|
65
|
-
; if encounters operator ?
|
|
66
|
-
; ^ should you test if it matches ??
|
|
67
|
-
print (first list)
|
|
68
|
-
|
|
69
|
-
; also print list.first() <-- or list.first().print()
|
|
70
|
-
;
|
|
71
|
-
|
|
72
|
-
; could you create something like:
|
|
73
|
-
;
|
|
74
|
-
; list.filter( a == b )
|
|
75
|
-
;
|
|
76
|
-
; new myClass().getList().filter( item < 10 )
|
|
77
|
-
|
|
78
|
-
}
|
|
79
|
-
}
|
package/compiler/test_json.clj
DELETED
package/compiler/test_lambda.clj
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
class utils {
|
|
3
|
-
static fn adder2:int (value:int index:int) {
|
|
4
|
-
print "Cool, Static function adder2 called"
|
|
5
|
-
return (value + 20)
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
class dynamicUtility {
|
|
10
|
-
fn add:int (value:int index:int) {
|
|
11
|
-
return (value + 50)
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
class dynamic2 extends dynamicUtility {
|
|
16
|
-
|
|
17
|
-
fn add:int (value:int index:int) {
|
|
18
|
-
return (value + 150)
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
fn filter_odd:boolean (x:int i:int) {
|
|
22
|
-
return ((x % 2) == 0)
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
class closure_test {
|
|
27
|
-
|
|
28
|
-
; static functions could be given...
|
|
29
|
-
|
|
30
|
-
def propFn:(_:void ())
|
|
31
|
-
|
|
32
|
-
static fn adder:int (left:int right:int) {
|
|
33
|
-
return (left + right)
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
static fn adder2:int (value:int index:int) {
|
|
37
|
-
print "Static function adder2 called"
|
|
38
|
-
return (value + 20)
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
fn adder3:int (value:int index:int) {
|
|
42
|
-
print "Dynamic function adder3 called"
|
|
43
|
-
return (value + 30)
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
fn run() {
|
|
47
|
-
this.propFn = (fn:void () {
|
|
48
|
-
print "The anonymous function to match..."
|
|
49
|
-
})
|
|
50
|
-
((unwrap propFn)())
|
|
51
|
-
|
|
52
|
-
def list1 ([] 1 2 3 4 5)
|
|
53
|
-
|
|
54
|
-
; curry the adder first parameter...
|
|
55
|
-
def make_adder (fn:(_:int (x:int i:int)) (value:int) {
|
|
56
|
-
return (fn:int (x:int i:int) {
|
|
57
|
-
return (x + value)
|
|
58
|
-
})
|
|
59
|
-
})
|
|
60
|
-
|
|
61
|
-
def filter_3 (fn:boolean (x:int i:int) {
|
|
62
|
-
return (x != 3)
|
|
63
|
-
})
|
|
64
|
-
|
|
65
|
-
def multiplier (fn:int (x:int n:int) {
|
|
66
|
-
return (x * x)
|
|
67
|
-
})
|
|
68
|
-
def printer (fn:int (x:int n:int) {
|
|
69
|
-
print (to_string x)
|
|
70
|
-
return (x * 1)
|
|
71
|
-
})
|
|
72
|
-
|
|
73
|
-
def printer2 (fn (x:int n:int) {
|
|
74
|
-
print (to_string x)
|
|
75
|
-
})
|
|
76
|
-
|
|
77
|
-
; is this necessary ??
|
|
78
|
-
; Curry to create a new function with binded parameters ??
|
|
79
|
-
; def byTen (curry multiplier 10)
|
|
80
|
-
; --> (fn:<rvofmul> ( p2:T) ( return multiplier(10 p2)))
|
|
81
|
-
|
|
82
|
-
def o (new dynamicUtility)
|
|
83
|
-
def o2 (new dynamic2)
|
|
84
|
-
|
|
85
|
-
; -------- these do not work yet:
|
|
86
|
-
; def test1 o2.add
|
|
87
|
-
; print "trying test 1 " + ( test1(2 2) )
|
|
88
|
-
; def fnList ([] o2.add o2.add )
|
|
89
|
-
|
|
90
|
-
print "---- list items ---"
|
|
91
|
-
forEach list1 printer2
|
|
92
|
-
|
|
93
|
-
print "---- multiplier ---"
|
|
94
|
-
forEach (list1.map(multiplier)) printer2
|
|
95
|
-
|
|
96
|
-
print "---- adder of 10 ---"
|
|
97
|
-
map (list1.map( (make_adder(10)) )) printer
|
|
98
|
-
|
|
99
|
-
; test static function call as closure parameter...
|
|
100
|
-
print "---- static adder of 20 ---"
|
|
101
|
-
map (list1.map(utils.adder2)) printer
|
|
102
|
-
|
|
103
|
-
print "---- dynamic adder of 30 for this ---"
|
|
104
|
-
map (list1.map(this.adder3)) printer
|
|
105
|
-
|
|
106
|
-
print "---- dynamic adder from object ---"
|
|
107
|
-
map (list1.map(o.add)) printer
|
|
108
|
-
|
|
109
|
-
print "---- dynamic 2 adder from object ---"
|
|
110
|
-
map (list1.map(o2.add)) printer
|
|
111
|
-
|
|
112
|
-
print "---- add and multiply ----"
|
|
113
|
-
map (map ( map list1 (make_adder(10)) ) multiplier ) printer
|
|
114
|
-
|
|
115
|
-
print "---- filter 3 add and multiply ----"
|
|
116
|
-
map (map ( map (filter list1 filter_3) (make_adder(10)) ) multiplier ) printer
|
|
117
|
-
|
|
118
|
-
print "---- filter o2.filter_odd and multiply, ng version ----"
|
|
119
|
-
map (map ( map (filter list1 o2.filter_odd) (make_adder(10)) ) multiplier ) printer
|
|
120
|
-
|
|
121
|
-
((fn:void (x:string y:int) {
|
|
122
|
-
print "oh, nice, " + x + " now this works too!!! with " +y
|
|
123
|
-
})("Look!!!!" 12345))
|
|
124
|
-
|
|
125
|
-
def str ((fn:string (x:string y:int) {
|
|
126
|
-
return ( 'second ... oh, nice, ' + x + ' now this works too!!! with ' +y)
|
|
127
|
-
})( ((fn:string () {
|
|
128
|
-
return ' *** inner fn works *** '
|
|
129
|
-
})()) 1234))
|
|
130
|
-
|
|
131
|
-
print "res == " + str
|
|
132
|
-
|
|
133
|
-
def myFn ( (fn:(_:string ()) () {
|
|
134
|
-
return (fn:string () {
|
|
135
|
-
return "message from inner function"
|
|
136
|
-
})
|
|
137
|
-
})())
|
|
138
|
-
|
|
139
|
-
print (myFn())
|
|
140
|
-
|
|
141
|
-
print (( (fn:(_:string ()) (m:string) {
|
|
142
|
-
return (fn:string () {
|
|
143
|
-
return "message from second inner function " + m
|
|
144
|
-
})
|
|
145
|
-
})('OK!'))())
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
}
|
|
149
|
-
static fn main () {
|
|
150
|
-
def o (new closure_test)
|
|
151
|
-
o.run()
|
|
152
|
-
}
|
|
153
|
-
}
|
package/compiler/test_pcmd.clj
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
operators {
|
|
3
|
-
test1 _:void () {
|
|
4
|
-
templates {
|
|
5
|
-
es6 ( '' (plugin 'maven' ( (dep 'org.json' 'json' '20171018' ) ) ) )
|
|
6
|
-
java7 ( '' (plugin 'maven' ( (dep 'org.json' 'json' '20171018' ) ) ) )
|
|
7
|
-
cpp ( '' (plugin 'makefile' ( (dep 'picosha2.h' 'https://github.com/okdshin/PicoSHA2/blob/master/picosha2.h' ) ) ) )
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
class someClass @serialize(true) {
|
|
13
|
-
def name 'foobar'
|
|
14
|
-
def lastName 'OK'
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
; testing plugin commands
|
|
18
|
-
class testpcmd {
|
|
19
|
-
static fn main () {
|
|
20
|
-
|
|
21
|
-
print "" || "second"
|
|
22
|
-
print "first " || "second"
|
|
23
|
-
print "" || "" || "Third"
|
|
24
|
-
|
|
25
|
-
test1
|
|
26
|
-
|
|
27
|
-
; def o (new someClass)
|
|
28
|
-
; print (to_string (o.toDictionary()))
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
}
|
package/compiler/test_pcmd2.clj
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
operators {
|
|
3
|
-
test1 _:void () {
|
|
4
|
-
templates {
|
|
5
|
-
es6 ( '' (plugin 'maven' ( (dep 'org.json' 'json' '20171018' ) ) ) )
|
|
6
|
-
java7 ( '' (plugin 'maven' ( (dep 'org.json' 'json' '20171018' ) ) ) )
|
|
7
|
-
cpp ( '' (plugin 'makefile' ( (dep 'picosha2.h' 'https://github.com/okdshin/PicoSHA2/blob/master/picosha2.h' ) ) ) )
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
class testpcmd2 {
|
|
13
|
-
static fn main () {
|
|
14
|
-
|
|
15
|
-
print "---- new version of the test ---"
|
|
16
|
-
print "" || "second"
|
|
17
|
-
print "first " || "second"
|
|
18
|
-
print "" || "" || "Third"
|
|
19
|
-
|
|
20
|
-
print "OK"
|
|
21
|
-
|
|
22
|
-
test1
|
|
23
|
-
|
|
24
|
-
; def o (new someClass)
|
|
25
|
-
; print (to_string (o.toDictionary()))
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
}
|