diff --git a/LANGUAGES.md b/LANGUAGES.md index 598131cd..9339acd1 100644 --- a/LANGUAGES.md +++ b/LANGUAGES.md @@ -40,6 +40,7 @@ C++ (cc,cpp,cxx,c++,pcc,ino) C++ Header (hh,hpp,hxx,inl,ipp) Cabal (cabal) Cairo (cairo) +Cangjie (cj) Cap'n Proto (capnp) Cassius (cassius) Ceylon (ceylon) diff --git a/SCC-OUTPUT-REPORT.html b/SCC-OUTPUT-REPORT.html index d2bc25ae..4bde9c8a 100644 --- a/SCC-OUTPUT-REPORT.html +++ b/SCC-OUTPUT-REPORT.html @@ -13,65 +13,75 @@ Go 30 - 9478 + 9512 1475 - 458 - 7545 - 1542 - 406970 - 4017 + 459 + 7578 + 1530 + 253568 + 4036 - processor/formatters.go + processor\formatters.go - 1604 - 213 + 1612 + 215 46 - 1345 - 300 - 48690 - 794 + 1351 + 289 + 48042 + 797 - processor/workers_test.go + processor\workers_test.go 1586 296 33 1257 287 - 32301 + 32306 525 - processor/formatters_test.go + processor\formatters_test.go - 1447 - 158 + 1463 + 156 3 - 1286 - 118 - 33829 - 372 + 1304 + 120 + 34187 + 385 - processor/workers.go + processor\workers.go - 883 + 880 129 91 - 663 - 230 - 25701 + 660 + 228 + 25607 496 - processor/processor.go + processor\processor.go - 658 - 139 - 102 - 417 - 91 - 19040 - 429 + 667 + 140 + 103 + 424 + 92 + 19261 + 435 + + main.go + + 398 + 10 + 6 + 382 + 10 + 8850 + 253 - processor/detector_test.go + processor\detector_test.go 393 87 @@ -81,17 +91,7 @@ 7271 149 - main.go - - 392 - 10 - 6 - 376 - 10 - 8715 - 250 - - cmd/badges/main.go + cmd\badges\main.go 341 58 @@ -101,7 +101,7 @@ 7971 202 - processor/workers_tokei_test.go + processor\workers_tokei_test.go 249 37 @@ -111,17 +111,17 @@ 4040 125 - processor/detector.go + processor\detector.go 238 45 33 160 59 - 6238 + 6243 151 - processor/file_test.go + processor\file_test.go 213 50 @@ -131,7 +131,7 @@ 4595 97 - processor/structs.go + processor\structs.go 193 21 @@ -141,7 +141,7 @@ 5646 132 - processor/workers_regression_test.go + processor\workers_regression_test.go 189 38 @@ -151,7 +151,7 @@ 3415 93 - processor/file.go + processor\file.go 167 24 @@ -161,17 +161,17 @@ 3779 99 - processor/processor_test.go + processor\processor_test.go 151 36 1 114 - 23 - 2617 + 21 + 2601 66 - cmd/badges/main_test.go + cmd\badges\main_test.go 123 3 @@ -181,7 +181,7 @@ 1911 60 - cmd/badges/simplecache.go + cmd\badges\simplecache.go 109 17 @@ -191,27 +191,27 @@ 1931 75 - scripts/include.go + scripts\include.go - 78 - 16 + 76 + 15 8 - 54 + 53 16 - 1816 + 1796 56 - processor/processor_unix.go + processor\processor_unix.go 69 14 14 41 8 - 2042 + 2043 52 - processor/helpers_test.go + processor\helpers_test.go 62 14 @@ -221,17 +221,7 @@ 949 31 - processor/filereader.go - - 52 - 10 - 10 - 32 - 6 - 1329 - 37 - - cmd/badges/simplecache_test.go + cmd\badges\simplecache_test.go 52 12 @@ -241,7 +231,17 @@ 1041 30 - processor/cocomo.go + processor\filereader.go + + 52 + 10 + 10 + 32 + 6 + 1329 + 37 + + processor\cocomo.go 43 6 @@ -251,7 +251,7 @@ 2222 35 - processor/cocomo_test.go + processor\cocomo_test.go 37 8 @@ -261,27 +261,17 @@ 699 23 - processor/bloom.go + processor\bloom.go 37 7 12 18 2 - 1051 + 1050 29 - processor/helpers.go - - 32 - 6 - 4 - 22 - 2 - 544 - 21 - - processor/structs_test.go + processor\structs_test.go 32 8 @@ -291,7 +281,17 @@ 517 19 - processor/processor_unix_test.go + processor\helpers.go + + 32 + 6 + 4 + 22 + 2 + 544 + 21 + + processor\processor_unix_test.go 24 6 @@ -301,7 +301,7 @@ 424 16 - examples/language/go.go + examples\language\go.go 19 6 @@ -311,28 +311,28 @@ 165 12 - processor/constants.go + processor\constants.go 5 1 0 4 0 - 176481 + 23133 5 Total 30 - 9478 + 9512 1475 - 458 - 7545 - 1542 - 406970 - 4017 + 459 + 7578 + 1530 + 253568 + 4036 - Estimated Cost to Develop (organic) $225,495
Estimated Schedule Effort (organic) 7.81 months
Estimated People Required (organic) 2.57
+ Estimated Cost to Develop (organic) $226,531
Estimated Schedule Effort (organic) 7.82 months
Estimated People Required (organic) 2.57
\ No newline at end of file diff --git a/examples/language/main.cj b/examples/language/main.cj new file mode 100644 index 00000000..2e175e70 --- /dev/null +++ b/examples/language/main.cj @@ -0,0 +1,27 @@ +import std.sync.* +import std.time.* +import std.collection.* + +let count = AtomicInt64(0) + +main(): Int64 { + let list = ArrayList>() + + // create 1000 threads. + for (i in 0..1000) { + let fut = spawn { + sleep(Duration.millisecond) // sleep for 1ms. + count.fetchAdd(1) + } + list.append(fut) + } + + // Wait for all threads finished. + for (f in list) { + f.get() + } + + let val = count.load() + println("count = ${val}") + return 0 +} diff --git a/languages.json b/languages.json index cf378a5b..1a48b15b 100644 --- a/languages.json +++ b/languages.json @@ -1213,6 +1213,50 @@ } ] }, + "Cangjie": { + "complexitychecks": [ + "for ", + "for(", + "if ", + "if(", + "while ", + "else ", + "|| ", + "&& ", + "!= ", + "== " + ], + "extensions": [ + "cj" + ], + "line_comment": [ + "//" + ], + "multi_line": [ + [ + "/*", + "*/" + ] + ], + "quotes": [ + { + "end": "'", + "start": "'" + }, + { + "end": "\"", + "start": "\"" + }, + { + "end": "\"\"\"", + "start": "\"\"\"" + }, + { + "end": "'''", + "start": "'''" + } + ] + }, "Cap'n Proto": { "complexitychecks": [], "extensions": [ diff --git a/processor/constants.go b/processor/constants.go index 0794dbc3..d8028f23 100644 --- a/processor/constants.go +++ b/processor/constants.go @@ -1,5 +1,5 @@ package processor const ( - languages = `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` + languages = `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` ) diff --git a/test-all.sh b/test-all.sh index ce822894..56ab584d 100755 --- a/test-all.sh +++ b/test-all.sh @@ -906,7 +906,7 @@ else fi # Try out specific languages -for i in 'Bosque ' 'Flow9 ' 'Bitbucket Pipeline ' 'Docker ignore ' 'Q# ' 'Futhark ' 'Alloy ' 'Wren ' 'Monkey C ' 'Alchemist ' 'Luna ' 'ignore ' 'XML Schema ' 'Web Services' 'Go ' 'Java ' 'Boo ' 'License ' 'BASH ' 'C Shell ' 'Korn Shell ' 'Makefile ' 'Shell ' 'Zsh ' 'Rakefile ' 'Gemfile ' 'Dockerfile ' 'Yarn ' 'Sieve ' 'F# ' 'Elm ' 'Terraform ' 'Clojure ' 'C# ' 'LLVM IR ' 'HAML ' 'FXML ' 'DM ' 'Nushell ' 'Racket ' 'DOT ' 'YAML ' 'Teal ' 'FSL ' 'INI ' 'Hare ' 'Templ ' 'Cuda ' 'GraphQL ' 'Bicep ' 'Pkl ' 'TypeSpec ' 'LALRPOP ' 'Snakemake ' 'OpenQASM ' 'Typst ' 'ZoKrates ' 'Chapel ' 'Slang ' 'Circom ' 'Proto ' 'wenyan ' +for i in 'Bosque ' 'Flow9 ' 'Bitbucket Pipeline ' 'Docker ignore ' 'Q# ' 'Futhark ' 'Alloy ' 'Wren ' 'Monkey C ' 'Alchemist ' 'Luna ' 'ignore ' 'XML Schema ' 'Web Services' 'Go ' 'Java ' 'Boo ' 'License ' 'BASH ' 'C Shell ' 'Korn Shell ' 'Makefile ' 'Shell ' 'Zsh ' 'Rakefile ' 'Gemfile ' 'Dockerfile ' 'Yarn ' 'Sieve ' 'F# ' 'Elm ' 'Terraform ' 'Clojure ' 'C# ' 'LLVM IR ' 'HAML ' 'FXML ' 'DM ' 'Nushell ' 'Racket ' 'DOT ' 'YAML ' 'Teal ' 'FSL ' 'INI ' 'Hare ' 'Templ ' 'Cuda ' 'GraphQL ' 'Bicep ' 'Pkl ' 'TypeSpec ' 'LALRPOP ' 'Snakemake ' 'OpenQASM ' 'Typst ' 'ZoKrates ' 'Chapel ' 'Slang ' 'Circom ' 'Proto ' 'wenyan ' 'Cangjie ' do if ./scc "examples/language/" | grep -q "$i "; then echo -e "${GREEN}PASSED $i Language Check"