├── .idea ├── .gitignore ├── misc.xml ├── vcs.xml ├── inspectionProfiles │ ├── profiles_settings.xml │ └── Project_Default.xml ├── jlu-2119-compiler-design-semantic_analysis 2.iml └── modules.xml ├── outputs ├── cache │ ├── test_program │ │ ├── lexerr │ │ ├── synerr │ │ ├── snl │ │ └── gene │ ├── 2022-03-02_10:46:00_XNFXAMEDEU │ │ ├── cmt │ │ ├── lexerr │ │ ├── synerr │ │ ├── gene │ │ └── snl │ ├── 2022-03-03_23:09:13_CGAAQRNMID │ │ ├── cmt │ │ ├── lexerr │ │ ├── snl │ │ ├── synerr │ │ └── tk │ └── 2022-03-03_23:39:25_WPARRZEACI │ │ ├── cmt │ │ ├── lexerr │ │ ├── snl │ │ ├── synerr │ │ └── tk ├── SNL语言例子 │ ├── 一般例子 │ │ ├── c2.txt │ │ ├── c4.txt │ │ ├── c5.txt │ │ ├── c6.txt │ │ ├── c7.txt │ │ ├── easy.txt │ │ ├── exp.txt │ │ ├── 数组测试.txt │ │ ├── 调用测试.txt │ │ ├── 输入输出.txt │ │ └── sd1.txt │ └── 书作者 留的 │ │ ├── 错误检查例.txt │ │ ├── 应用实例 │ │ ├── cs1.txt │ │ ├── sort.txt │ │ └── factorial.txt │ │ └── 优化测试例 │ │ ├── const.txt │ │ ├── loop1.txt │ │ ├── loop2.txt │ │ ├── loop3.txt │ │ ├── eccexam1.txt │ │ └── eccexam2.txt ├── demos │ ├── 输入输出 │ ├── eccexam1 │ ├── exp-hacker │ ├── easy │ ├── factorial │ ├── eccexam2 │ ├── 错误检查例 │ ├── 数组测试 │ ├── c2 │ ├── demo1 │ ├── const │ ├── loop1 │ ├── c6 │ ├── c4 │ ├── 过程嵌套 │ ├── loop3 │ ├── c7 │ ├── loop2 │ ├── exp │ ├── 调用测试 │ ├── sd1 │ ├── c5 │ └── bubble sort └── test_demos │ ├── program_for_hacking.snl │ ├── mock_program.txt │ ├── bubble_sort.snl │ ├── mock_program1.txt │ ├── bubble_sort.gene │ └── mock_program2.txt ├── src ├── lexical_analysis │ ├── model │ │ ├── logs.js │ │ └── errors.js │ ├── sentence.txt │ ├── package-lock.json │ ├── readingtest.txt │ ├── package.json │ └── rw.js ├── coordinator_webserver │ ├── node_modules │ │ ├── mime │ │ │ ├── .npmignore │ │ │ └── cli.js │ │ ├── .bin │ │ │ ├── mime │ │ │ └── crc32 │ │ ├── call-bind │ │ │ ├── .eslintignore │ │ │ ├── README.md │ │ │ ├── .nycrc │ │ │ ├── .eslintrc │ │ │ ├── callBound.js │ │ │ └── .github │ │ │ │ └── FUNDING.yml │ │ ├── isarray │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── Makefile │ │ │ ├── index.js │ │ │ ├── test.js │ │ │ └── component.json │ │ ├── jszip │ │ │ ├── .jshintignore │ │ │ ├── .editorconfig │ │ │ ├── .codeclimate.yml │ │ │ ├── lib │ │ │ │ ├── signature.js │ │ │ │ ├── defaults.js │ │ │ │ ├── compressions.js │ │ │ │ ├── license_header.js │ │ │ │ ├── readable-stream-browser.js │ │ │ │ ├── external.js │ │ │ │ ├── reader │ │ │ │ │ ├── NodeBufferReader.js │ │ │ │ │ └── Uint8ArrayReader.js │ │ │ │ └── stream │ │ │ │ │ ├── Crc32Probe.js │ │ │ │ │ ├── ConvertWorker.js │ │ │ │ │ └── DataLengthProbe.js │ │ │ ├── .jshintrc │ │ │ └── .travis.yml │ │ ├── zip-a-folder │ │ │ ├── test │ │ │ │ ├── data │ │ │ │ │ ├── a │ │ │ │ │ │ └── b │ │ │ │ │ │ │ └── b1.txt │ │ │ │ │ └── c │ │ │ │ │ │ └── c1.txt │ │ │ │ └── inaccessible │ │ │ │ │ └── inaccessibleFile.txt │ │ │ ├── dist │ │ │ │ ├── test │ │ │ │ │ └── tests-ZipAFolder.d.ts │ │ │ │ └── lib │ │ │ │ │ └── ZipAFolder.d.ts │ │ │ ├── .prettierrc.yaml │ │ │ ├── prettierCLI │ │ │ ├── jest.config.json │ │ │ ├── .circleci │ │ │ │ └── config.yml │ │ │ └── tsconfig.json │ │ ├── get-intrinsic │ │ │ ├── .eslintignore │ │ │ ├── .nycrc │ │ │ ├── .github │ │ │ │ └── FUNDING.yml │ │ │ └── .eslintrc │ │ ├── object-inspect │ │ │ ├── .eslintignore │ │ │ ├── util.inspect.js │ │ │ ├── example │ │ │ │ ├── circular.js │ │ │ │ ├── fn.js │ │ │ │ ├── inspect.js │ │ │ │ └── all.js │ │ │ ├── .nycrc │ │ │ ├── test │ │ │ │ ├── holes.js │ │ │ │ ├── lowbyte.js │ │ │ │ ├── undef.js │ │ │ │ ├── deep.js │ │ │ │ ├── browser │ │ │ │ │ └── dom.js │ │ │ │ ├── circular.js │ │ │ │ ├── fakes.js │ │ │ │ └── quoteStyle.js │ │ │ ├── .github │ │ │ │ └── FUNDING.yml │ │ │ └── test-core-js.js │ │ ├── side-channel │ │ │ ├── .eslintignore │ │ │ ├── README.md │ │ │ ├── .eslintrc │ │ │ ├── .nycrc │ │ │ └── .github │ │ │ │ └── FUNDING.yml │ │ ├── debug │ │ │ ├── node.js │ │ │ ├── .coveralls.yml │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── .eslintrc │ │ │ ├── src │ │ │ │ ├── index.js │ │ │ │ └── inspector-log.js │ │ │ └── component.json │ │ ├── fs-constants │ │ │ ├── browser.js │ │ │ ├── index.js │ │ │ ├── package.json │ │ │ └── README.md │ │ ├── cookie-signature │ │ │ ├── .npmignore │ │ │ ├── package.json │ │ │ └── History.md │ │ ├── readable-stream │ │ │ ├── duplex.js │ │ │ ├── transform.js │ │ │ ├── lib │ │ │ │ └── internal │ │ │ │ │ └── streams │ │ │ │ │ ├── stream.js │ │ │ │ │ └── stream-browser.js │ │ │ ├── passthrough.js │ │ │ ├── duplex-browser.js │ │ │ ├── writable-browser.js │ │ │ ├── writable.js │ │ │ ├── readable-browser.js │ │ │ ├── readable.js │ │ │ └── node_modules │ │ │ │ └── safe-buffer │ │ │ │ └── package.json │ │ ├── concat-map │ │ │ ├── .travis.yml │ │ │ ├── example │ │ │ │ └── map.js │ │ │ └── index.js │ │ ├── unpipe │ │ │ ├── HISTORY.md │ │ │ └── package.json │ │ ├── balanced-match │ │ │ └── .github │ │ │ │ └── FUNDING.yml │ │ ├── tar-stream │ │ │ ├── index.js │ │ │ ├── node_modules │ │ │ │ └── readable-stream │ │ │ │ │ ├── lib │ │ │ │ │ └── internal │ │ │ │ │ │ └── streams │ │ │ │ │ │ ├── stream.js │ │ │ │ │ │ ├── stream-browser.js │ │ │ │ │ │ ├── from-browser.js │ │ │ │ │ │ └── state.js │ │ │ │ │ ├── readable-browser.js │ │ │ │ │ ├── experimentalWarning.js │ │ │ │ │ └── readable.js │ │ │ └── sandbox.js │ │ ├── bl │ │ │ ├── node_modules │ │ │ │ └── readable-stream │ │ │ │ │ ├── lib │ │ │ │ │ └── internal │ │ │ │ │ │ └── streams │ │ │ │ │ │ ├── stream.js │ │ │ │ │ │ ├── stream-browser.js │ │ │ │ │ │ ├── from-browser.js │ │ │ │ │ │ └── state.js │ │ │ │ │ ├── readable-browser.js │ │ │ │ │ ├── experimentalWarning.js │ │ │ │ │ └── readable.js │ │ │ ├── .travis.yml │ │ │ └── test │ │ │ │ ├── convert.js │ │ │ │ └── isBufferList.js │ │ ├── core-util-is │ │ │ ├── README.md │ │ │ └── package.json │ │ ├── archiver │ │ │ └── node_modules │ │ │ │ └── readable-stream │ │ │ │ ├── lib │ │ │ │ └── internal │ │ │ │ │ └── streams │ │ │ │ │ ├── stream.js │ │ │ │ │ ├── stream-browser.js │ │ │ │ │ ├── from-browser.js │ │ │ │ │ └── state.js │ │ │ │ ├── readable-browser.js │ │ │ │ ├── experimentalWarning.js │ │ │ │ └── readable.js │ │ ├── crc32-stream │ │ │ ├── node_modules │ │ │ │ └── readable-stream │ │ │ │ │ ├── lib │ │ │ │ │ └── internal │ │ │ │ │ │ └── streams │ │ │ │ │ │ ├── stream.js │ │ │ │ │ │ ├── stream-browser.js │ │ │ │ │ │ ├── from-browser.js │ │ │ │ │ │ └── state.js │ │ │ │ │ ├── readable-browser.js │ │ │ │ │ ├── experimentalWarning.js │ │ │ │ │ └── readable.js │ │ │ └── lib │ │ │ │ └── index.js │ │ ├── zip-stream │ │ │ └── node_modules │ │ │ │ └── readable-stream │ │ │ │ ├── lib │ │ │ │ └── internal │ │ │ │ │ └── streams │ │ │ │ │ ├── stream.js │ │ │ │ │ ├── stream-browser.js │ │ │ │ │ ├── from-browser.js │ │ │ │ │ └── state.js │ │ │ │ ├── readable-browser.js │ │ │ │ ├── experimentalWarning.js │ │ │ │ └── readable.js │ │ ├── compress-commons │ │ │ ├── node_modules │ │ │ │ └── readable-stream │ │ │ │ │ ├── lib │ │ │ │ │ └── internal │ │ │ │ │ │ └── streams │ │ │ │ │ │ ├── stream.js │ │ │ │ │ │ ├── stream-browser.js │ │ │ │ │ │ ├── from-browser.js │ │ │ │ │ │ └── state.js │ │ │ │ │ ├── readable-browser.js │ │ │ │ │ ├── experimentalWarning.js │ │ │ │ │ └── readable.js │ │ │ └── lib │ │ │ │ ├── archivers │ │ │ │ └── archive-entry.js │ │ │ │ ├── compress-commons.js │ │ │ │ └── util │ │ │ │ └── index.js │ │ ├── lie │ │ │ └── polyfill.js │ │ ├── setprototypeof │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ ├── LICENSE │ │ │ ├── test │ │ │ │ └── index.js │ │ │ └── README.md │ │ ├── utils-merge │ │ │ ├── .npmignore │ │ │ └── index.js │ │ ├── function-bind │ │ │ ├── index.js │ │ │ ├── test │ │ │ │ └── .eslintrc │ │ │ ├── .eslintrc │ │ │ ├── .npmignore │ │ │ └── .editorconfig │ │ ├── has │ │ │ ├── src │ │ │ │ └── index.js │ │ │ ├── README.md │ │ │ └── test │ │ │ │ └── index.js │ │ ├── util-deprecate │ │ │ ├── node.js │ │ │ ├── History.md │ │ │ └── package.json │ │ ├── base64-js │ │ │ └── index.d.ts │ │ ├── toidentifier │ │ │ ├── HISTORY.md │ │ │ └── index.js │ │ ├── has-symbols │ │ │ ├── .nycrc │ │ │ ├── .eslintrc │ │ │ ├── index.js │ │ │ ├── .github │ │ │ │ └── FUNDING.yml │ │ │ └── test │ │ │ │ ├── index.js │ │ │ │ └── shams │ │ │ │ ├── get-own-property-symbols.js │ │ │ │ └── core-js.js │ │ ├── mime-db │ │ │ └── index.js │ │ ├── set-immediate-shim │ │ │ ├── index.js │ │ │ ├── readme.md │ │ │ └── package.json │ │ ├── qs │ │ │ ├── lib │ │ │ │ ├── index.js │ │ │ │ └── formats.js │ │ │ ├── .nycrc │ │ │ ├── .github │ │ │ │ └── FUNDING.yml │ │ │ └── .editorconfig │ │ ├── express │ │ │ └── index.js │ │ ├── async │ │ │ ├── internal │ │ │ │ ├── getIterator.js │ │ │ │ ├── breakLoop.js │ │ │ │ ├── withoutIndex.js │ │ │ │ ├── isArrayLike.js │ │ │ │ ├── range.js │ │ │ │ ├── initialParams.js │ │ │ │ ├── onlyOnce.js │ │ │ │ ├── once.js │ │ │ │ ├── promiseCallback.js │ │ │ │ ├── reject.js │ │ │ │ ├── map.js │ │ │ │ ├── applyEach.js │ │ │ │ ├── awaitify.js │ │ │ │ └── setImmediate.js │ │ │ ├── bower.json │ │ │ └── unmemoize.js │ │ ├── body-parser │ │ │ └── node_modules │ │ │ │ └── qs │ │ │ │ ├── lib │ │ │ │ ├── index.js │ │ │ │ └── formats.js │ │ │ │ ├── .nycrc │ │ │ │ ├── .github │ │ │ │ └── FUNDING.yml │ │ │ │ └── .editorconfig │ │ ├── inherits │ │ │ ├── inherits.js │ │ │ ├── package.json │ │ │ ├── LICENSE │ │ │ └── inherits_browser.js │ │ ├── encodeurl │ │ │ └── HISTORY.md │ │ ├── crc-32 │ │ │ └── types │ │ │ │ ├── tslint.json │ │ │ │ ├── tsconfig.json │ │ │ │ └── index.d.ts │ │ ├── ieee754 │ │ │ └── index.d.ts │ │ ├── pako │ │ │ └── index.js │ │ ├── depd │ │ │ └── lib │ │ │ │ └── compat │ │ │ │ └── event-listener-count.js │ │ ├── merge-descriptors │ │ │ └── HISTORY.md │ │ ├── forwarded │ │ │ └── HISTORY.md │ │ ├── lodash.union │ │ │ ├── README.md │ │ │ └── package.json │ │ ├── process-nextick-args │ │ │ ├── readme.md │ │ │ └── package.json │ │ ├── escape-html │ │ │ ├── package.json │ │ │ └── Readme.md │ │ ├── lodash.flatten │ │ │ ├── README.md │ │ │ └── package.json │ │ ├── content-type │ │ │ └── HISTORY.md │ │ ├── lodash.defaults │ │ │ ├── README.md │ │ │ └── package.json │ │ ├── media-typer │ │ │ ├── HISTORY.md │ │ │ └── package.json │ │ ├── methods │ │ │ └── HISTORY.md │ │ ├── lodash.difference │ │ │ ├── README.md │ │ │ └── package.json │ │ ├── lodash.isplainobject │ │ │ ├── README.md │ │ │ └── package.json │ │ ├── graceful-fs │ │ │ ├── clone.js │ │ │ └── LICENSE │ │ ├── archiver-utils │ │ │ ├── CHANGELOG.md │ │ │ └── README.md │ │ ├── lazystream │ │ │ └── test │ │ │ │ └── data.md │ │ ├── fs.realpath │ │ │ └── package.json │ │ ├── path-to-regexp │ │ │ ├── package.json │ │ │ └── History.md │ │ ├── path-is-absolute │ │ │ ├── index.js │ │ │ └── package.json │ │ ├── once │ │ │ ├── package.json │ │ │ └── LICENSE │ │ ├── wrappy │ │ │ ├── package.json │ │ │ ├── LICENSE │ │ │ └── README.md │ │ ├── inflight │ │ │ ├── package.json │ │ │ └── LICENSE │ │ ├── iconv-lite │ │ │ └── encodings │ │ │ │ └── index.js │ │ ├── minimatch │ │ │ ├── LICENSE │ │ │ └── package.json │ │ ├── ms │ │ │ └── package.json │ │ ├── ipaddr.js │ │ │ └── package.json │ │ ├── send │ │ │ └── node_modules │ │ │ │ └── ms │ │ │ │ └── package.json │ │ ├── string_decoder │ │ │ ├── package.json │ │ │ └── node_modules │ │ │ │ └── safe-buffer │ │ │ │ └── package.json │ │ ├── end-of-stream │ │ │ └── package.json │ │ ├── vary │ │ │ └── HISTORY.md │ │ ├── safer-buffer │ │ │ └── package.json │ │ └── ee-first │ │ │ └── package.json │ ├── .DS_Store │ ├── test.js │ ├── static │ │ └── zips │ │ │ ├── 2022-03-02_10:34:42_FEPUYGHCZF.zip │ │ │ ├── 2022-03-04_18:49:40_NGOZXWTNHS.zip │ │ │ └── 2022-03-04_18:51:45_DHBWEUGRYH.zip │ └── package.json ├── syntax_analysis │ ├── recursive_descent │ │ ├── go.mod │ │ ├── model │ │ │ ├── model.go │ │ │ └── statement │ │ │ │ ├── Match.go │ │ │ │ └── BaseType.go │ │ └── rw.go │ └── parseLL1 │ │ └── __pycache__ │ │ ├── parse.cpython-310.pyc │ │ ├── LL1Support.cpython-310.pyc │ │ └── LL1Support.cpython-37.pyc ├── .DS_Store └── semantic_analysis │ └── __pycache__ │ ├── parse.cpython-310.pyc │ ├── LL1Support.cpython-310.pyc │ └── SemanticSupport.cpython-310.pyc ├── .gitignore ├── .DS_Store └── run.sh /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /outputs/cache/test_program/lexerr: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /src/lexical_analysis/model/logs.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /outputs/cache/2022-03-02_10:46:00_XNFXAMEDEU/cmt: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /outputs/cache/2022-03-02_10:46:00_XNFXAMEDEU/lexerr: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:09:13_CGAAQRNMID/cmt: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:09:13_CGAAQRNMID/lexerr: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:39:25_WPARRZEACI/cmt: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:39:25_WPARRZEACI/lexerr: -------------------------------------------------------------------------------- 1 | [] -------------------------------------------------------------------------------- /outputs/cache/test_program/synerr: -------------------------------------------------------------------------------- 1 | [null,null,null] -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/mime/.npmignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/.bin/mime: -------------------------------------------------------------------------------- 1 | ../mime/cli.js -------------------------------------------------------------------------------- /src/lexical_analysis/sentence.txt: -------------------------------------------------------------------------------- 1 | hello for 2 | testing233. -------------------------------------------------------------------------------- /outputs/cache/2022-03-02_10:46:00_XNFXAMEDEU/synerr: -------------------------------------------------------------------------------- 1 | ["","","",""] -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | log.out 2 | runnable 3 | __pycache__/ 4 | zips/ 5 | outputs/ -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/.bin/crc32: -------------------------------------------------------------------------------- 1 | ../crc-32/bin/crc32.njs -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/call-bind/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/isarray/.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/.jshintignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/test/data/a/b/b1.txt: -------------------------------------------------------------------------------- 1 | TEST -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/test/data/c/c1.txt: -------------------------------------------------------------------------------- 1 | TEST -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/get-intrinsic/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/side-channel/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/.DS_Store -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /src/syntax_analysis/recursive_descent/go.mod: -------------------------------------------------------------------------------- 1 | module recursive_descent_parser 2 | 3 | go 1.16 4 | -------------------------------------------------------------------------------- /src/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/.DS_Store -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/fs-constants/browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('constants') 2 | -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:09:13_CGAAQRNMID/snl: -------------------------------------------------------------------------------- 1 | program p 2 | var 3 | integer a 4 | begin 5 | a := 1 6 | end. -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:39:25_WPARRZEACI/snl: -------------------------------------------------------------------------------- 1 | program p 2 | var 3 | integer a 4 | begin 5 | a := 1 6 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/cookie-signature/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/dist/test/tests-ZipAFolder.d.ts: -------------------------------------------------------------------------------- 1 | import 'jest-extended'; 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/call-bind/README.md: -------------------------------------------------------------------------------- 1 | # call-bind 2 | Robustly `.call.bind()` a function. 3 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/util.inspect.js: -------------------------------------------------------------------------------- 1 | module.exports = require('util').inspect; 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/duplex.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').Duplex 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/concat-map/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 0.4 4 | - 0.6 5 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/isarray/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "0.8" 4 | - "0.10" 5 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/transform.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').Transform 2 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/c2.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/c2.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/c4.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/c4.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/c5.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/c5.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/c6.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/c6.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/c7.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/c7.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/passthrough.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./readable').PassThrough 2 | -------------------------------------------------------------------------------- /src/syntax_analysis/recursive_descent/model/model.go: -------------------------------------------------------------------------------- 1 | package model 2 | 3 | //语法树节点 4 | type SyntaxTreeNode struct { 5 | } 6 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/easy.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/easy.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/exp.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/exp.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/数组测试.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/数组测试.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/调用测试.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/一般例子/调用测试.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/fs-constants/index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('fs').constants || require('constants') 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/duplex-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/_stream_duplex.js'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/writable-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/_stream_writable.js'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/错误检查例.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/错误检查例.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/balanced-match/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | tidelift: "npm/balanced-match" 2 | patreon: juliangruber 3 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/isarray/Makefile: -------------------------------------------------------------------------------- 1 | 2 | test: 3 | @node_modules/.bin/tape test.js 4 | 5 | .PHONY: test 6 | 7 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/index.js: -------------------------------------------------------------------------------- 1 | exports.extract = require('./extract') 2 | exports.pack = require('./pack') 3 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/应用实例/cs1.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/应用实例/cs1.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/coordinator_webserver/.DS_Store -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/core-util-is/README.md: -------------------------------------------------------------------------------- 1 | # core-util-is 2 | 3 | The `util.is*` functions introduced in Node v0.12. 4 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/应用实例/sort.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/应用实例/sort.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/优化测试例/const.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/优化测试例/const.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/优化测试例/loop1.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/优化测试例/loop1.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/优化测试例/loop2.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/优化测试例/loop2.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/优化测试例/loop3.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/优化测试例/loop3.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/优化测试例/eccexam1.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/优化测试例/eccexam1.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/优化测试例/eccexam2.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/优化测试例/eccexam2.txt -------------------------------------------------------------------------------- /outputs/SNL语言例子/书作者 留的/应用实例/factorial.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/outputs/SNL语言例子/书作者 留的/应用实例/factorial.txt -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/stream.js: -------------------------------------------------------------------------------- 1 | module.exports = require('stream'); 2 | -------------------------------------------------------------------------------- /src/lexical_analysis/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lexical_analysis", 3 | "lockfileVersion": 2, 4 | "requires": true, 5 | "packages": {} 6 | } 7 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lie/polyfill.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | if (typeof global.Promise !== 'function') { 3 | global.Promise = require('./lib'); 4 | } 5 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/setprototypeof/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function setPrototypeOf(o: any, proto: object | null): any; 2 | export = setPrototypeOf; 3 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/side-channel/README.md: -------------------------------------------------------------------------------- 1 | # side-channel 2 | Store information about any JS value in a side channel. Uses WeakMap if available. 3 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/.prettierrc.yaml: -------------------------------------------------------------------------------- 1 | bracketSpacing: false 2 | singleQuote: true 3 | printWidth: 120 4 | tabWidth: 4 5 | parser: typescript -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /outputs/demos/输入输出: -------------------------------------------------------------------------------- 1 | program p 2 | type t = integer; 3 | var t V1 ; 4 | char v2; 5 | begin 6 | read(v1); 7 | V1:=V1+10; 8 | write(v1) 9 | end. 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/stream-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = require('events').EventEmitter; 2 | -------------------------------------------------------------------------------- /src/semantic_analysis/__pycache__/parse.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/semantic_analysis/__pycache__/parse.cpython-310.pyc -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/输入输出.txt: -------------------------------------------------------------------------------- 1 | program p 2 | type t = integer; 3 | var t V1 ; 4 | char v2; 5 | begin 6 | read(v1); 7 | V1:=V1+10; 8 | write(v1) 9 | end. 10 | -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:09:13_CGAAQRNMID/synerr: -------------------------------------------------------------------------------- 1 | ["Program DeclarePart VarDec VarDeclaration parse fialed! VarDecLIst VarIdList VarIdMore match failed! \u0026{RESERVED begin 4 1}"] -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:39:25_WPARRZEACI/synerr: -------------------------------------------------------------------------------- 1 | ["Program DeclarePart VarDec VarDeclaration parse fialed! VarDecLIst VarIdList VarIdMore match failed! \u0026{RESERVED begin 4 1}"] -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/utils-merge/.npmignore: -------------------------------------------------------------------------------- 1 | CONTRIBUTING.md 2 | Makefile 3 | docs/ 4 | examples/ 5 | reports/ 6 | test/ 7 | 8 | .jshintrc 9 | .travis.yml 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/test.js: -------------------------------------------------------------------------------- 1 | var {zip} = require('zip-a-folder') 2 | 3 | zip('/Users/bytedance/codes/jlu-2119-compiler-design/outputs/cache/2022-03-04_16:18:19_TQDLJUWZVI','./example.zip') -------------------------------------------------------------------------------- /src/semantic_analysis/__pycache__/LL1Support.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/semantic_analysis/__pycache__/LL1Support.cpython-310.pyc -------------------------------------------------------------------------------- /src/syntax_analysis/parseLL1/__pycache__/parse.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/syntax_analysis/parseLL1/__pycache__/parse.cpython-310.pyc -------------------------------------------------------------------------------- /src/semantic_analysis/__pycache__/SemanticSupport.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/semantic_analysis/__pycache__/SemanticSupport.cpython-310.pyc -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/function-bind/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var implementation = require('./implementation'); 4 | 5 | module.exports = Function.prototype.bind || implementation; 6 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has/src/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var bind = require('function-bind'); 4 | 5 | module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty); 6 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/isarray/index.js: -------------------------------------------------------------------------------- 1 | var toString = {}.toString; 2 | 3 | module.exports = Array.isArray || function (arr) { 4 | return toString.call(arr) == '[object Array]'; 5 | }; 6 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line = lf 5 | insert_final_newline = true 6 | charset = utf-8 7 | indent_style = space 8 | indent_size = 4 9 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/util-deprecate/node.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * For Node.js, simply re-export the core `util.deprecate` function. 4 | */ 5 | 6 | module.exports = require('util').deprecate; 7 | -------------------------------------------------------------------------------- /src/syntax_analysis/parseLL1/__pycache__/LL1Support.cpython-310.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/syntax_analysis/parseLL1/__pycache__/LL1Support.cpython-310.pyc -------------------------------------------------------------------------------- /src/syntax_analysis/parseLL1/__pycache__/LL1Support.cpython-37.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/syntax_analysis/parseLL1/__pycache__/LL1Support.cpython-37.pyc -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/example/circular.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var obj = { a: 1, b: [3, 4] }; 5 | obj.c = obj; 6 | console.log(inspect(obj)); 7 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/example/fn.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var obj = [1, 2, function f(n) { return n + 5; }, 4]; 5 | console.log(inspect(obj)); 6 | -------------------------------------------------------------------------------- /src/coordinator_webserver/static/zips/2022-03-02_10:34:42_FEPUYGHCZF.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/coordinator_webserver/static/zips/2022-03-02_10:34:42_FEPUYGHCZF.zip -------------------------------------------------------------------------------- /src/coordinator_webserver/static/zips/2022-03-04_18:49:40_NGOZXWTNHS.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/coordinator_webserver/static/zips/2022-03-04_18:49:40_NGOZXWTNHS.zip -------------------------------------------------------------------------------- /src/coordinator_webserver/static/zips/2022-03-04_18:51:45_DHBWEUGRYH.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/waynelee-lwc/2119-snl-compiler-design/HEAD/src/coordinator_webserver/static/zips/2022-03-04_18:51:45_DHBWEUGRYH.zip -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/lib/internal/streams/from-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = function () { 2 | throw new Error('Readable.from is not available in the browser') 3 | }; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver/node_modules/readable-stream/lib/internal/streams/from-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = function () { 2 | throw new Error('Readable.from is not available in the browser') 3 | }; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/from-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = function () { 2 | throw new Error('Readable.from is not available in the browser') 3 | }; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/from-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = function () { 2 | throw new Error('Readable.from is not available in the browser') 3 | }; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/base64-js/index.d.ts: -------------------------------------------------------------------------------- 1 | export function byteLength(b64: string): number; 2 | export function toByteArray(b64: string): Uint8Array; 3 | export function fromByteArray(uint8: Uint8Array): string; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/from-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = function () { 2 | throw new Error('Readable.from is not available in the browser') 3 | }; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/mime/cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | var mime = require('./mime.js'); 4 | var file = process.argv[2]; 5 | var type = mime.lookup(file); 6 | 7 | process.stdout.write(type + '\n'); 8 | 9 | -------------------------------------------------------------------------------- /outputs/demos/eccexam1: -------------------------------------------------------------------------------- 1 | {测试公共表达式优化部分的例子;检测一般变量} 2 | 3 | program pp 4 | var integer A,B,C,D,E,F,G; 5 | 6 | begin 7 | F:=1; 8 | A:=B*C+C*B; 9 | D:=B; 10 | E:=D*C+B*C; 11 | B:=F; 12 | G:=B*C+B*C 13 | 14 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/from-browser.js: -------------------------------------------------------------------------------- 1 | module.exports = function () { 2 | throw new Error('Readable.from is not available in the browser') 3 | }; 4 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/toidentifier/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2021-11-14 2 | ================== 3 | 4 | * pref: enable strict mode 5 | 6 | 1.0.0 / 2018-07-09 7 | ================== 8 | 9 | * Initial release 10 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "exclude": [ 6 | "coverage", 7 | "test" 8 | ] 9 | } 10 | -------------------------------------------------------------------------------- /src/lexical_analysis/readingtest.txt: -------------------------------------------------------------------------------- 1 | hello world! 2 | this line will test whether character '\n' affect string splition 3 | here is the third line \n 4 | strange symbols \n \\ 5 | next serval lines will test blanks. 6 | 7 | 8 | here is the end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/concat-map/example/map.js: -------------------------------------------------------------------------------- 1 | var concatMap = require('../'); 2 | var xs = [ 1, 2, 3, 4, 5, 6 ]; 3 | var ys = concatMap(xs, function (x) { 4 | return x % 2 ? [ x - 0.1, x, x + 0.1 ] : []; 5 | }); 6 | console.dir(ys); 7 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | 2 | language: node_js 3 | node_js: 4 | - "6" 5 | - "5" 6 | - "4" 7 | 8 | install: 9 | - make node_modules 10 | 11 | script: 12 | - make lint 13 | - make test 14 | - make coveralls 15 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-statements-per-line": [2, { "max": 2 }], 8 | "no-magic-numbers": 0, 9 | "multiline-comment-style": 0, 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "rules": { 7 | "no-console": 0, 8 | "no-empty": [1, { "allowEmptyCatch": true }] 9 | }, 10 | "extends": "eslint:recommended" 11 | } 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/function-bind/test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "array-bracket-newline": 0, 4 | "array-element-newline": 0, 5 | "max-statements-per-line": [2, { "max": 2 }], 6 | "no-invalid-this": 0, 7 | "no-magic-numbers": 0, 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/side-channel/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-lines-per-function": 0, 8 | "max-params": 0, 9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * Copyright(c) 2015-2022 Douglas Christopher Wilson 5 | * MIT Licensed 6 | */ 7 | 8 | /** 9 | * Module exports. 10 | */ 11 | 12 | module.exports = require('./db.json') 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/set-immediate-shim/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | module.exports = typeof setImmediate === 'function' ? setImmediate : 3 | function setImmediate() { 4 | var args = [].slice.apply(arguments); 5 | args.splice(1, 0, 0); 6 | setTimeout.apply(null, args); 7 | }; 8 | -------------------------------------------------------------------------------- /outputs/demos/exp-hacker: -------------------------------------------------------------------------------- 1 | program forHacking 2 | var 3 | integer hack; 4 | integer a,b,c; 5 | begin 6 | hack := a-b-c; 7 | hack := a-(b-c); 8 | hack := a-b-c-d; 9 | hack := a-b-c+d-e; 10 | hack := a*b/c/d/e; 11 | hack := a-b-c*d-e; 12 | hack := a-b*c/d/e-f 13 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/prettierCLI: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | echo Calling prettier on $1 3 | node node_modules/prettier/bin-prettier.js --version 4 | node node_modules/prettier/bin-prettier.js --print-width 120 --tab-width 4 --single-quote --no-bracket-spacing --parser flow --write $1 5 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var stringify = require('./stringify'); 4 | var parse = require('./parse'); 5 | var formats = require('./formats'); 6 | 7 | module.exports = { 8 | formats: formats, 9 | parse: parse, 10 | stringify: stringify 11 | }; 12 | -------------------------------------------------------------------------------- /outputs/test_demos/program_for_hacking.snl: -------------------------------------------------------------------------------- 1 | program forHacking 2 | var 3 | integer hack; 4 | integer a,b,c; 5 | begin 6 | hack := a-b-c; 7 | hack := a-(b-c); 8 | hack := a-b-c-d; 9 | hack := a-b-c+d-e; 10 | hack := a*b/c/d/e; 11 | hack := a-b-c*d-e; 12 | hack := a-b*c/d/e-f 13 | end -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/writable.js: -------------------------------------------------------------------------------- 1 | var Stream = require("stream") 2 | var Writable = require("./lib/_stream_writable.js") 3 | 4 | if (process.env.READABLE_STREAM === 'disable') { 5 | module.exports = Stream && Stream.Writable || Writable 6 | } else { 7 | module.exports = Writable 8 | } 9 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/qs/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "dist" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/call-bind/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/express/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | module.exports = require('./lib/express'); 12 | -------------------------------------------------------------------------------- /src/lexical_analysis/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lexical_analysis", 3 | "version": "1.0.0", 4 | "description": "吉林大学编译原理课程设计词法分析", 5 | "main": "main.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "WayneLi,Ehlas,HabourFu", 10 | "license": "ISC" 11 | } 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/getIterator.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (coll) { 8 | return coll[Symbol.iterator] && coll[Symbol.iterator](); 9 | }; 10 | 11 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | arch: 3 | - amd64 4 | - ppc64le 5 | language: node_js 6 | node_js: 7 | - '6' 8 | - '8' 9 | - '10' 10 | - '12' 11 | - '14' 12 | - '15' 13 | - lts/* 14 | notifications: 15 | email: 16 | - rod@vagg.org 17 | - matteo.collina@gmail.com 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/get-intrinsic/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/side-channel/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "test" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /outputs/demos/easy: -------------------------------------------------------------------------------- 1 | {简单的过程调用,测试变参的传递} 2 | program pp 3 | var integer v1; 4 | char c; 5 | 6 | procedure f(); 7 | begin 8 | v1 :=2 9 | end 10 | 11 | procedure t1(); 12 | var integer v1; 13 | begin 14 | v1 :=1 15 | end 16 | 17 | begin 18 | read(v1); 19 | t1(); 20 | write(v1); 21 | f(); 22 | write(v1) 23 | end. 24 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/body-parser/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var stringify = require('./stringify'); 4 | var parse = require('./parse'); 5 | var formats = require('./formats'); 6 | 7 | module.exports = { 8 | formats: formats, 9 | parse: parse, 10 | stringify: stringify 11 | }; 12 | -------------------------------------------------------------------------------- /outputs/demos/factorial: -------------------------------------------------------------------------------- 1 | {递归调用测试} 2 | {功能:对于输入n,输出n的阶乘} 3 | program sd 4 | var integer s; 5 | integer t; 6 | procedure factor(integer n;var integer m); 7 | var integer w; 8 | begin 9 | if n=0 10 | then m:=1 11 | else 12 | factor(n-1,w); 13 | m:=n*w 14 | fi 15 | end 16 | begin 17 | read(s); 18 | factor(s,t); 19 | write(t) 20 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/.codeclimate.yml: -------------------------------------------------------------------------------- 1 | --- 2 | engines: 3 | duplication: 4 | enabled: true 5 | config: 6 | languages: 7 | - javascript 8 | eslint: 9 | enabled: true 10 | fixme: 11 | enabled: true 12 | ratings: 13 | paths: 14 | - "lib/*.js" 15 | exclude_paths: 16 | - "dist/*" 17 | -------------------------------------------------------------------------------- /outputs/demos/eccexam2: -------------------------------------------------------------------------------- 1 | 2 | {测试常表达式优化和公共表达式优化部分的例子; 3 | 检测复杂变量} 4 | 5 | program pp 6 | var integer v,x,i,j,y; 7 | array [1..10] of integer a; 8 | begin 9 | i:=5; 10 | j:=3; 11 | read(v); 12 | a[i]:= v; 13 | x:=a[i]+j; 14 | write(x); 15 | a[i]:=a[i]+j; 16 | write(a[i]); 17 | y:=a[i]+j; 18 | write(y) 19 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/body-parser/node_modules/qs/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "reporter": ["text-summary", "text", "html", "json"], 5 | "lines": 86, 6 | "statements": 85.93, 7 | "functions": 82.43, 8 | "branches": 76.06, 9 | "exclude": [ 10 | "coverage", 11 | "dist" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | try { 2 | var util = require('util'); 3 | /* istanbul ignore next */ 4 | if (typeof util.inherits !== 'function') throw ''; 5 | module.exports = util.inherits; 6 | } catch (e) { 7 | /* istanbul ignore next */ 8 | module.exports = require('./inherits_browser.js'); 9 | } 10 | -------------------------------------------------------------------------------- /outputs/test_demos/mock_program.txt: -------------------------------------------------------------------------------- 1 | program p 2 | type t1 = integer 3 | var integer v1,v2 4 | procedure 5 | q(integr i); 6 | var integer a; 7 | begin 8 | a:=i; 9 | write(a) 10 | end 11 | begin 12 | read(v1); 13 | if v1<10 14 | then v1:=v1+10 15 | else v1:=v1-10 16 | fi; 17 | q(v1) 18 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/.nycrc: -------------------------------------------------------------------------------- 1 | { 2 | "all": true, 3 | "check-coverage": false, 4 | "instrumentation": false, 5 | "sourceMap": false, 6 | "reporter": ["text-summary", "text", "html", "json"], 7 | "exclude": [ 8 | "coverage", 9 | "example", 10 | "test", 11 | "test-core-js.js" 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /.idea/jlu-2119-compiler-design-semantic_analysis 2.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /outputs/demos/错误检查例: -------------------------------------------------------------------------------- 1 | {给出一个错误的程序,测试是否能够检查出来, 2 | 并给出错误 提示信息} 3 | 4 | program _error 5 | var integer s; 6 | integer t; 7 | procedure factor(intaeger n;var integer m); 8 | var integer w; 9 | begin 10 | if n=0 11 | then m:=1 12 | else 13 | factor(n-1,w); 14 | m:=n*w 15 | fi 16 | end 17 | begin 18 | read(s); 19 | factor(s,t); 20 | write(t) 21 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/breakLoop.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | // A temporary value used to identify if the loop should be broken. 7 | // See #1064, #1293 8 | const breakLoop = {}; 9 | exports.default = breakLoop; 10 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/encodeurl/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.2 / 2018-01-21 2 | ================== 3 | 4 | * Fix encoding `%` as last character 5 | 6 | 1.0.1 / 2016-06-09 7 | ================== 8 | 9 | * Fix encoding unpaired surrogates at start/end of string 10 | 11 | 1.0.0 / 2016-06-08 12 | ================== 13 | 14 | * Initial release 15 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/withoutIndex.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = _withoutIndex; 7 | function _withoutIndex(iteratee) { 8 | return (value, index, callback) => iteratee(value, callback); 9 | } 10 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process !== 'undefined' && process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/function-bind/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-name-matching": 0, 8 | "indent": [2, 4], 9 | "max-nested-callbacks": [2, 3], 10 | "max-params": [2, 3], 11 | "max-statements": [2, 20], 12 | "no-new-func": [1], 13 | "strict": [0] 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/example/inspect.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /* eslint-env browser */ 4 | var inspect = require('../'); 5 | 6 | var d = document.createElement('div'); 7 | d.setAttribute('id', 'beep'); 8 | d.innerHTML = 'woooiiiii'; 9 | 10 | console.log(inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }])); 11 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "async", 3 | "main": "dist/async.js", 4 | "ignore": [ 5 | "bower_components", 6 | "lib", 7 | "test", 8 | "node_modules", 9 | "perf", 10 | "support", 11 | "**/.*", 12 | "*.config.js", 13 | "*.json", 14 | "index.js", 15 | "Makefile" 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc-32/types/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "dtslint/dtslint.json", 3 | "rules": { 4 | "whitespace": false, 5 | "no-sparse-arrays": false, 6 | "only-arrow-functions": false, 7 | "no-consecutive-blank-lines": false, 8 | "prefer-conditional-expression": false, 9 | "one-variable-per-declaration": false 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has/README.md: -------------------------------------------------------------------------------- 1 | # has 2 | 3 | > Object.prototype.hasOwnProperty.call shortcut 4 | 5 | ## Installation 6 | 7 | ```sh 8 | npm install --save has 9 | ``` 10 | 11 | ## Usage 12 | 13 | ```js 14 | var has = require('has'); 15 | 16 | has({}, 'hasOwnProperty'); // false 17 | has(Object.prototype, 'hasOwnProperty'); // true 18 | ``` 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/signature.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | exports.LOCAL_FILE_HEADER = "PK\x03\x04"; 3 | exports.CENTRAL_FILE_HEADER = "PK\x01\x02"; 4 | exports.CENTRAL_DIRECTORY_END = "PK\x05\x06"; 5 | exports.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK\x06\x07"; 6 | exports.ZIP64_CENTRAL_DIRECTORY_END = "PK\x06\x06"; 7 | exports.DATA_DESCRIPTOR = "PK\x07\x08"; 8 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/call-bind/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-name-matching": 0, 8 | "id-length": 0, 9 | "new-cap": [2, { 10 | "capIsNewExceptions": [ 11 | "GetIntrinsic", 12 | ], 13 | }], 14 | "no-magic-numbers": 0, 15 | "operator-linebreak": [2, "before"], 16 | }, 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/isArrayLike.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = isArrayLike; 7 | function isArrayLike(value) { 8 | return value && typeof value.length === 'number' && value.length >= 0 && value.length % 1 === 0; 9 | } 10 | module.exports = exports['default']; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/holes.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var xs = ['a', 'b']; 5 | xs[5] = 'f'; 6 | xs[7] = 'j'; 7 | xs[8] = 'k'; 8 | 9 | test('holes', function (t) { 10 | t.plan(1); 11 | t.equal( 12 | inspect(xs), 13 | "[ 'a', 'b', , , , 'f', , 'j', 'k' ]" 14 | ); 15 | }); 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/lowbyte.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var obj = { x: 'a\r\nb', y: '\x05! \x1f \x12' }; 5 | 6 | test('interpolate low bytes', function (t) { 7 | t.plan(1); 8 | t.equal( 9 | inspect(obj), 10 | "{ x: 'a\\r\\nb', y: '\\x05! \\x1F \\x12' }" 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/range.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = range; 7 | function range(size) { 8 | var result = Array(size); 9 | while (size--) { 10 | result[size] = size; 11 | } 12 | return result; 13 | } 14 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/defaults.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | exports.base64 = false; 3 | exports.binary = false; 4 | exports.dir = false; 5 | exports.createFolders = true; 6 | exports.date = null; 7 | exports.compression = null; 8 | exports.compressionOptions = null; 9 | exports.comment = null; 10 | exports.unixPermissions = null; 11 | exports.dosPermissions = null; 12 | -------------------------------------------------------------------------------- /outputs/demos/数组测试: -------------------------------------------------------------------------------- 1 | {数组测试} 2 | {结果应为:0,1,2,3,4,5,6,7,8,9,10} 3 | program sd 4 | type i=integer; 5 | sarray=array [0..10] of integer; 6 | var i x; 7 | sarray y; 8 | integer ss; 9 | procedure sd(integer a); 10 | begin 11 | write(a) 12 | end 13 | begin 14 | ss:=0; 15 | while ss<11 do 16 | y[ss]:=ss; 17 | x:=y[ss]; 18 | sd(x); 19 | ss:=ss+1 20 | endwh 21 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/initialParams.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (fn) { 8 | return function (...args /*, callback*/) { 9 | var callback = args.pop(); 10 | return fn.call(this, args, callback); 11 | }; 12 | }; 13 | 14 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/function-bind/.npmignore: -------------------------------------------------------------------------------- 1 | # gitignore 2 | .DS_Store 3 | .monitor 4 | .*.swp 5 | .nodemonignore 6 | releases 7 | *.log 8 | *.err 9 | fleet.json 10 | public/browserify 11 | bin/*.json 12 | .bin 13 | build 14 | compile 15 | .lock-wscript 16 | coverage 17 | node_modules 18 | 19 | # Only apps should have lockfiles 20 | npm-shrinkwrap.json 21 | package-lock.json 22 | yarn.lock 23 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/util-deprecate/History.md: -------------------------------------------------------------------------------- 1 | 2 | 1.0.2 / 2015-10-07 3 | ================== 4 | 5 | * use try/catch when checking `localStorage` (#3, @kumavis) 6 | 7 | 1.0.1 / 2014-11-25 8 | ================== 9 | 10 | * browser: use `console.warn()` for deprecation calls 11 | * browser: more jsdocs 12 | 13 | 1.0.0 / 2014-04-30 14 | ================== 15 | 16 | * initial commit 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/undef.js: -------------------------------------------------------------------------------- 1 | var test = require('tape'); 2 | var inspect = require('../'); 3 | 4 | var obj = { a: 1, b: [3, 4, undefined, null], c: undefined, d: null }; 5 | 6 | test('undef and null', function (t) { 7 | t.plan(1); 8 | t.equal( 9 | inspect(obj), 10 | '{ a: 1, b: [ 3, 4, undefined, null ], c: undefined, d: null }' 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var has = require('../'); 5 | 6 | test('has', function (t) { 7 | t.equal(has({}, 'hasOwnProperty'), false, 'object literal does not have own property "hasOwnProperty"'); 8 | t.equal(has(Object.prototype, 'hasOwnProperty'), true, 'Object.prototype has own property "hasOwnProperty"'); 9 | t.end(); 10 | }); 11 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/ieee754/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace ieee754 { 2 | export function read( 3 | buffer: Uint8Array, offset: number, isLE: boolean, mLen: number, 4 | nBytes: number): number; 5 | export function write( 6 | buffer: Uint8Array, value: number, offset: number, isLE: boolean, 7 | mLen: number, nBytes: number): void; 8 | } 9 | 10 | export = ieee754; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/function-bind/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = tab 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 120 11 | 12 | [CHANGELOG.md] 13 | indent_style = space 14 | indent_size = 2 15 | 16 | [*.json] 17 | max_line_length = off 18 | 19 | [Makefile] 20 | max_line_length = off 21 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/lib/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * node-crc32-stream 3 | * 4 | * Copyright (c) 2014 Chris Talkington, contributors. 5 | * Licensed under the MIT license. 6 | * https://github.com/archiverjs/node-crc32-stream/blob/master/LICENSE-MIT 7 | */ 8 | 9 | 'use strict'; 10 | 11 | module.exports = { 12 | CRC32Stream: require('./crc32-stream'), 13 | DeflateCRC32Stream: require('./deflate-crc32-stream') 14 | } 15 | -------------------------------------------------------------------------------- /run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | CURRENT_DIR=`pwd` 4 | PORT=3008 5 | 6 | echo "Compiling syntax analysis proj..." 7 | cd $CURRENT_DIR/src/syntax_analysis/recursive_descent 8 | go build -o runnable 9 | if [ $? != 0 ]; then 10 | echo "Compiling failed!" 1>&2 11 | exit 1 12 | fi 13 | echo "Deploying..." 14 | sudo kill -9 $(sudo lsof -t -i:$PORT) 15 | cd $CURRENT_DIR/src/coordinator_webserver 16 | nohup node server.js > log.out & 17 | 18 | echo "Done!" 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/concat-map/index.js: -------------------------------------------------------------------------------- 1 | module.exports = function (xs, fn) { 2 | var res = []; 3 | for (var i = 0; i < xs.length; i++) { 4 | var x = fn(xs[i], i); 5 | if (isArray(x)) res.push.apply(res, x); 6 | else res.push(x); 7 | } 8 | return res; 9 | }; 10 | 11 | var isArray = Array.isArray || function (xs) { 12 | return Object.prototype.toString.call(xs) === '[object Array]'; 13 | }; 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/pako/index.js: -------------------------------------------------------------------------------- 1 | // Top level file is just a mixin of submodules & constants 2 | 'use strict'; 3 | 4 | var assign = require('./lib/utils/common').assign; 5 | 6 | var deflate = require('./lib/deflate'); 7 | var inflate = require('./lib/inflate'); 8 | var constants = require('./lib/zlib/constants'); 9 | 10 | var pako = {}; 11 | 12 | assign(pako, deflate, inflate, constants); 13 | 14 | module.exports = pako; 15 | -------------------------------------------------------------------------------- /outputs/demos/c2: -------------------------------------------------------------------------------- 1 | {值参、变参结合功能测试} 2 | 3 | program arr 4 | var 5 | integer x,y,z; 6 | procedure f(integer x,y;var integer z); 7 | begin 8 | z:=x+y+z; 9 | write(x); 10 | write(y); 11 | write(z) 12 | end 13 | begin 14 | x:=3; 15 | y:=4; 16 | z:=5; 17 | f(x,y,z); 18 | write(x); 19 | write(y); 20 | write(z); 21 | f(6,x+y+z,y); 22 | write(x); 23 | write(y); 24 | write(z); 25 | f(x+y,y/x,x); 26 | write(x); 27 | write(y); 28 | write(z) 29 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "debug", 3 | "repo": "visionmedia/debug", 4 | "description": "small debugging utility", 5 | "version": "2.6.9", 6 | "keywords": [ 7 | "debug", 8 | "log", 9 | "debugger" 10 | ], 11 | "main": "src/browser.js", 12 | "scripts": [ 13 | "src/browser.js", 14 | "src/debug.js" 15 | ], 16 | "dependencies": { 17 | "rauchg/ms.js": "0.7.1" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/isarray/test.js: -------------------------------------------------------------------------------- 1 | var isArray = require('./'); 2 | var test = require('tape'); 3 | 4 | test('is array', function(t){ 5 | t.ok(isArray([])); 6 | t.notOk(isArray({})); 7 | t.notOk(isArray(null)); 8 | t.notOk(isArray(false)); 9 | 10 | var obj = {}; 11 | obj[0] = true; 12 | t.notOk(isArray(obj)); 13 | 14 | var arr = []; 15 | arr.foo = 'bar'; 16 | t.ok(isArray(arr)); 17 | 18 | t.end(); 19 | }); 20 | 21 | -------------------------------------------------------------------------------- /outputs/demos/demo1: -------------------------------------------------------------------------------- 1 | program p 2 | type 3 | t1 = integer; 4 | w1 = record 5 | integer x; 6 | integer y; 7 | end; 8 | var 9 | integer v1, v2; 10 | array[0..5]of integer a; 11 | procedure q(integer i; integer j); 12 | var 13 | integer a; 14 | begin 15 | a := i; 16 | write(a) 17 | end 18 | begin 19 | read(v1); 20 | write(v1+v2); 21 | if v1<10 then 22 | v1 := v1+10 23 | else 24 | v1 := v1-10 25 | fi; 26 | q(v1, 10); 27 | a[2] := a[3]+4 28 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc-32/types/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "lib": [ "es5" ], 5 | "noImplicitAny": true, 6 | "noImplicitThis": true, 7 | "strictNullChecks": false, 8 | "baseUrl": ".", 9 | "paths": { "crc-32": ["."] }, 10 | "types": [], 11 | "noEmit": true, 12 | "forceConsistentCasingInFileNames": true 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /outputs/demos/const: -------------------------------------------------------------------------------- 1 | {测试常表达式优化} 2 | 3 | program aa 4 | 5 | type t1=integer; 6 | var t1 v1,v2; 7 | integer a,b,c; 8 | char o1; 9 | procedure p(integer x; var integer y); 10 | 11 | begin 12 | x:=x+1 ; 13 | y:=y+1 14 | end 15 | begin 16 | v1:=10; 17 | v2:=26; 18 | a:=1; 19 | b:=a+1; 20 | a:=c; 21 | c:=b+5; 22 | 23 | p(a,b); 24 | if v2 < 3*(4+5) 25 | then v2:= v2+1 26 | else 27 | write(o1) 28 | fi 29 | end. 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/sandbox.js: -------------------------------------------------------------------------------- 1 | const tar = require('tar-stream') 2 | const fs = require('fs') 3 | const path = require('path') 4 | const pipeline = require('pump') // eequire('stream').pipeline 5 | 6 | fs.createReadStream('test.tar') 7 | .pipe(tar.extract()) 8 | .on('entry', function (header, stream, done) { 9 | console.log(header.name) 10 | pipeline(stream, fs.createWriteStream(path.join('/tmp', header.name)), done) 11 | }) 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/onlyOnce.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = onlyOnce; 7 | function onlyOnce(fn) { 8 | return function (...args) { 9 | if (fn === null) throw new Error("Callback was already called."); 10 | var callFn = fn; 11 | fn = null; 12 | callFn.apply(this, args); 13 | }; 14 | } 15 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/compressions.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GenericWorker = require("./stream/GenericWorker"); 4 | 5 | exports.STORE = { 6 | magic: "\x00\x00", 7 | compressWorker : function (compressionOptions) { 8 | return new GenericWorker("STORE compression"); 9 | }, 10 | uncompressWorker : function () { 11 | return new GenericWorker("STORE decompression"); 12 | } 13 | }; 14 | exports.DEFLATE = require('./flate'); 15 | -------------------------------------------------------------------------------- /outputs/demos/loop1: -------------------------------------------------------------------------------- 1 | { 循环不变式外提优化的测试程序1,测试外提} 2 | program pp 3 | var integer i,n,m,j,k; 4 | array [1..10] of integer a; 5 | 6 | begin 7 | i:=0; 8 | j:=0; 9 | k:=0; 10 | while k<3 do 11 | while i<5 do 12 | m:=10*(5+j); {运算提两层} 13 | m:=k+5; {运算提一层} 14 | n:=i; 15 | 16 | write(n); 17 | i:=i+1 18 | endwh; 19 | i:=0; 20 | k:=k+1 21 | endwh; 22 | write(m) 23 | end. 24 | 25 | 26 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/once.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = once; 7 | function once(fn) { 8 | function wrapper(...args) { 9 | if (fn === null) return; 10 | var callFn = fn; 11 | fn = null; 12 | callFn.apply(this, args); 13 | } 14 | Object.assign(wrapper, fn); 15 | return wrapper; 16 | } 17 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /outputs/demos/c6: -------------------------------------------------------------------------------- 1 | {并列声明函数之间的调用} 2 | {输入n,如果n<10,则输出n+10,n,n+10; 3 | 否则输出n-10,n,n-10} 4 | program example 5 | type w1=integer; 6 | var 7 | integer b; 8 | w1 a; 9 | procedure sss(integer a); 10 | begin 11 | write(a) 12 | end 13 | procedure sd(integer s1;var integer s2); 14 | begin 15 | if s1<10 16 | then s2:=s1+10 17 | else s2:=s1-10 18 | fi; 19 | sss(s2); 20 | sss(a) 21 | end 22 | begin 23 | read(a); 24 | sd(a,b); 25 | sss(b) 26 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "coordinator_webserver", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "server.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "start": "node server.js" 9 | }, 10 | "author": "", 11 | "license": "ISC", 12 | "dependencies": { 13 | "body-parser": "^1.20.0", 14 | "express": "^4.17.3", 15 | "jszip": "^3.9.1", 16 | "zip-a-folder": "^1.1.3" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/debug/src/inspector-log.js: -------------------------------------------------------------------------------- 1 | module.exports = inspectorLog; 2 | 3 | // black hole 4 | const nullStream = new (require('stream').Writable)(); 5 | nullStream._write = () => {}; 6 | 7 | /** 8 | * Outputs a `console.log()` to the Node.js Inspector console *only*. 9 | */ 10 | function inspectorLog() { 11 | const stdout = console._stdout; 12 | console._stdout = nullStream; 13 | console.log.apply(console, arguments); 14 | console._stdout = stdout; 15 | } 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/license_header.js: -------------------------------------------------------------------------------- 1 | /*! 2 | 3 | JSZip v__VERSION__ - A JavaScript class for generating and reading zip files 4 | 5 | 6 | (c) 2009-2016 Stuart Knightley 7 | Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown. 8 | 9 | JSZip uses the library pako released under the MIT license : 10 | https://github.com/nodeca/pako/blob/master/LICENSE 11 | */ 12 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/depd/lib/compat/event-listener-count.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2015 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = eventListenerCount 15 | 16 | /** 17 | * Get the count of listeners on an event emitter of a specific type. 18 | */ 19 | 20 | function eventListenerCount (emitter, type) { 21 | return emitter.listeners(type).length 22 | } 23 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "curly": true, 3 | "eqeqeq": true, 4 | "nonew": true, 5 | "noarg": true, 6 | "forin": true, 7 | "futurehostile": true, 8 | "freeze": true, 9 | "undef": true, 10 | "strict": true, 11 | "sub": true, 12 | "esversion": 3, 13 | 14 | "globals": { 15 | "TextEncoder": false, 16 | "TextDecoder": false, 17 | "self": true 18 | }, 19 | "browser": true, 20 | "node": true 21 | } 22 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/deep.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../'); 2 | var test = require('tape'); 3 | 4 | test('deep', function (t) { 5 | t.plan(4); 6 | var obj = [[[[[[500]]]]]]; 7 | t.equal(inspect(obj), '[ [ [ [ [ [Array] ] ] ] ] ]'); 8 | t.equal(inspect(obj, { depth: 4 }), '[ [ [ [ [Array] ] ] ] ]'); 9 | t.equal(inspect(obj, { depth: 2 }), '[ [ [Array] ] ]'); 10 | 11 | t.equal(inspect([[[{ a: 1 }]]], { depth: 3 }), '[ [ [ [Object] ] ] ]'); 12 | }); 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/merge-descriptors/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2016-01-17 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.0.0 / 2015-03-01 7 | ================== 8 | 9 | * Add option to only add new descriptors 10 | * Add simple argument validation 11 | * Add jsdoc to source file 12 | 13 | 0.0.2 / 2013-12-14 14 | ================== 15 | 16 | * Move repository to `component` organization 17 | 18 | 0.0.1 / 2013-10-29 19 | ================== 20 | 21 | * Initial release 22 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var origSymbol = typeof Symbol !== 'undefined' && Symbol; 4 | var hasSymbolSham = require('./shams'); 5 | 6 | module.exports = function hasNativeSymbols() { 7 | if (typeof origSymbol !== 'function') { return false; } 8 | if (typeof Symbol !== 'function') { return false; } 9 | if (typeof origSymbol('foo') !== 'symbol') { return false; } 10 | if (typeof Symbol('bar') !== 'symbol') { return false; } 11 | 12 | return hasSymbolSham(); 13 | }; 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/readable-stream-browser.js: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is used by module bundlers (browserify/webpack/etc) when 3 | * including a stream implementation. We use "readable-stream" to get a 4 | * consistent behavior between nodejs versions but bundlers often have a shim 5 | * for "stream". Using this shim greatly improve the compatibility and greatly 6 | * reduce the final size of the bundle (only one stream implementation, not 7 | * two). 8 | */ 9 | module.exports = require("stream"); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/call-bind/callBound.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GetIntrinsic = require('get-intrinsic'); 4 | 5 | var callBind = require('./'); 6 | 7 | var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf')); 8 | 9 | module.exports = function callBoundIntrinsic(name, allowMissing) { 10 | var intrinsic = GetIntrinsic(name, !!allowMissing); 11 | if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) { 12 | return callBind(intrinsic); 13 | } 14 | return intrinsic; 15 | }; 16 | -------------------------------------------------------------------------------- /outputs/demos/c4: -------------------------------------------------------------------------------- 1 | {域变量的测试程序} 2 | {功能:对于输入m,n ; 输出m+1,n+1,和m+1+n+1的值} 3 | program example 4 | type 5 | w2=record 6 | integer x; 7 | integer y; 8 | end; 9 | var 10 | w2 a; 11 | integer b; 12 | integer c; 13 | integer d; 14 | procedure add(integer s1;var integer s2); 15 | begin 16 | s2:=s1+1 17 | end 18 | begin 19 | read(b); 20 | read(d); 21 | add(b,c); 22 | a.x:=c; 23 | write(a.x); 24 | add(d,c); 25 | a.y:=c; 26 | write(a.y); 27 | write(a.x+a.y) 28 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/setprototypeof/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | /* eslint no-proto: 0 */ 3 | module.exports = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array ? setProtoOf : mixinProperties) 4 | 5 | function setProtoOf (obj, proto) { 6 | obj.__proto__ = proto 7 | return obj 8 | } 9 | 10 | function mixinProperties (obj, proto) { 11 | for (var prop in proto) { 12 | if (!Object.prototype.hasOwnProperty.call(obj, prop)) { 13 | obj[prop] = proto[prop] 14 | } 15 | } 16 | return obj 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/utils-merge/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Merge object b with object a. 3 | * 4 | * var a = { foo: 'bar' } 5 | * , b = { bar: 'baz' }; 6 | * 7 | * merge(a, b); 8 | * // => { foo: 'bar', bar: 'baz' } 9 | * 10 | * @param {Object} a 11 | * @param {Object} b 12 | * @return {Object} 13 | * @api public 14 | */ 15 | 16 | exports = module.exports = function(a, b){ 17 | if (a && b) { 18 | for (var key in b) { 19 | a[key] = b[key]; 20 | } 21 | } 22 | return a; 23 | }; 24 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/forwarded/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.2.0 / 2021-05-31 2 | ================== 3 | 4 | * Use `req.socket` over deprecated `req.connection` 5 | 6 | 0.1.2 / 2017-09-14 7 | ================== 8 | 9 | * perf: improve header parsing 10 | * perf: reduce overhead when no `X-Forwarded-For` header 11 | 12 | 0.1.1 / 2017-09-10 13 | ================== 14 | 15 | * Fix trimming leading / trailing OWS 16 | * perf: hoist regular expression 17 | 18 | 0.1.0 / 2014-09-21 19 | ================== 20 | 21 | * Initial release 22 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/browser/dom.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../../'); 2 | var test = require('tape'); 3 | 4 | test('dom element', function (t) { 5 | t.plan(1); 6 | 7 | var d = document.createElement('div'); 8 | d.setAttribute('id', 'beep'); 9 | d.innerHTML = 'woooiiiii'; 10 | 11 | t.equal( 12 | inspect([d, { a: 3, b: 4, c: [5, 6, [7, [8, [9]]]] }]), 13 | '[
...
, { a: 3, b: 4, c: [ 5, 6, [ 7, [ 8, [Object] ] ] ] } ]' 14 | ); 15 | }); 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/example/all.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var Buffer = require('safer-buffer').Buffer; 5 | 6 | var holes = ['a', 'b']; 7 | holes[4] = 'e'; 8 | holes[6] = 'g'; 9 | 10 | var obj = { 11 | a: 1, 12 | b: [3, 4, undefined, null], 13 | c: undefined, 14 | d: null, 15 | e: { 16 | regex: /^x/i, 17 | buf: Buffer.from('abc'), 18 | holes: holes 19 | }, 20 | now: new Date() 21 | }; 22 | obj.self = obj; 23 | console.log(inspect(obj)); 24 | -------------------------------------------------------------------------------- /outputs/demos/过程嵌套: -------------------------------------------------------------------------------- 1 | program p 2 | procedure p1(); 3 | procedure p11(); 4 | procedure p111(); 5 | var integer a,b; 6 | begin 7 | a := b; 8 | b := a 9 | end 10 | procedure p112(); 11 | var integer a,b; 12 | begin 13 | a := b; 14 | b := a 15 | end 16 | begin 17 | a := b 18 | end 19 | procedure p12(); 20 | begin 21 | a := b 22 | end 23 | begin 24 | a := b 25 | end 26 | procedure p2(); 27 | procedure p21(); 28 | begin 29 | a := b 30 | end 31 | begin 32 | a:=b 33 | end 34 | begin 35 | a := b 36 | end. -------------------------------------------------------------------------------- /src/lexical_analysis/rw.js: -------------------------------------------------------------------------------- 1 | var pathTool = require('path') 2 | var fs = require('fs') 3 | 4 | exports.LoadSourceCode = function(filename){ 5 | 6 | return fs.readFileSync(filename).toString() 7 | } 8 | 9 | exports.Save = function(filename,tokens){ 10 | let path = pathTool.resolve(filename) 11 | // console.log(path) 12 | let content = JSON.stringify(tokens) 13 | 14 | fs.writeFileSync(path,content) 15 | } 16 | 17 | exports.Loads = function(filename){ 18 | let path = pathTool.resolve(filename) 19 | return fs.readFileSync(path) 20 | } 21 | -------------------------------------------------------------------------------- /outputs/demos/loop3: -------------------------------------------------------------------------------- 1 | { 循环不变式外提优化的测试程序1,测试地址加外提} 2 | program pp 3 | var integer i,n,m,j,k,r; 4 | array [1..10] of integer a; 5 | 6 | begin 7 | i:=0; 8 | j:=0; 9 | k:=0; 10 | while k<3 do 11 | while i<5 do 12 | a[k]:=k; 13 | m:=10*(5+j); {运算提两层} 14 | m:=k+5; {运算提一层} 15 | n:=i; 16 | 17 | write(n); 18 | i:=i+1 19 | endwh; 20 | i:=0; 21 | k:=k+1 22 | endwh; 23 | write(m); 24 | 25 | write(a[1]); 26 | write(a[2]) 27 | end. 28 | 29 | 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc-32/types/index.d.ts: -------------------------------------------------------------------------------- 1 | /* crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */ 2 | // TypeScript Version: 2.2 3 | 4 | /** Version string */ 5 | export const version: string; 6 | 7 | /** Process a node buffer or byte array */ 8 | export function buf(data: number[] | Uint8Array, seed?: number): number; 9 | 10 | /** Process a binary string */ 11 | export function bstr(data: string, seed?: number): number; 12 | 13 | /** Process a JS string based on the UTF8 encoding */ 14 | export function str(data: string, seed?: number): number; 15 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.union/README.md: -------------------------------------------------------------------------------- 1 | # lodash.union v4.6.0 2 | 3 | The [lodash](https://lodash.com/) method `_.union` exported as a [Node.js](https://nodejs.org/) module. 4 | 5 | ## Installation 6 | 7 | Using npm: 8 | ```bash 9 | $ {sudo -H} npm i -g npm 10 | $ npm i --save lodash.union 11 | ``` 12 | 13 | In Node.js: 14 | ```js 15 | var union = require('lodash.union'); 16 | ``` 17 | 18 | See the [documentation](https://lodash.com/docs#union) or [package source](https://github.com/lodash/lodash/blob/4.6.0-npm-packages/lodash.union) for more details. 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/circular.js: -------------------------------------------------------------------------------- 1 | var inspect = require('../'); 2 | var test = require('tape'); 3 | 4 | test('circular', function (t) { 5 | t.plan(2); 6 | var obj = { a: 1, b: [3, 4] }; 7 | obj.c = obj; 8 | t.equal(inspect(obj), '{ a: 1, b: [ 3, 4 ], c: [Circular] }'); 9 | 10 | var double = {}; 11 | double.a = [double]; 12 | double.b = {}; 13 | double.b.inner = double.b; 14 | double.b.obj = double; 15 | t.equal(inspect(double), '{ a: [ [Circular] ], b: { inner: [Circular], obj: [Circular] } }'); 16 | }); 17 | -------------------------------------------------------------------------------- /src/syntax_analysis/recursive_descent/model/statement/Match.go: -------------------------------------------------------------------------------- 1 | package statement 2 | 3 | import ( 4 | "fmt" 5 | tokens "recursive_descent_parser/model/token" 6 | "recursive_descent_parser/model/token_set" 7 | ) 8 | 9 | func Match(expected *tokens.Token) (*tokens.Token, error) { 10 | token, err := token_set.Scanner.Poll() 11 | if err != nil { 12 | return nil, err 13 | } 14 | if expected.Compare(token) { 15 | fmt.Println("match!", expected, token) 16 | return token, nil 17 | } 18 | return nil, fmt.Errorf("token not match! wanted:%v, but:%v", expected, token) 19 | } 20 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/process-nextick-args/readme.md: -------------------------------------------------------------------------------- 1 | process-nextick-args 2 | ===== 3 | 4 | [![Build Status](https://travis-ci.org/calvinmetcalf/process-nextick-args.svg?branch=master)](https://travis-ci.org/calvinmetcalf/process-nextick-args) 5 | 6 | ```bash 7 | npm install --save process-nextick-args 8 | ``` 9 | 10 | Always be able to pass arguments to process.nextTick, no matter the platform 11 | 12 | ```js 13 | var pna = require('process-nextick-args'); 14 | 15 | pna.nextTick(function (a, b, c) { 16 | console.log(a, b, c); 17 | }, 'step', 3, 'profit'); 18 | ``` 19 | -------------------------------------------------------------------------------- /outputs/cache/2022-03-02_10:46:00_XNFXAMEDEU/gene: -------------------------------------------------------------------------------- 1 | program p 2 | procedure p1( 3 | procedure p11( 4 | procedure p111( 5 | var 6 | integer a, b; 7 | begin 8 | a := b; 9 | b := a 10 | end 11 | procedure p112( 12 | var 13 | integer a, b; 14 | begin 15 | a := b; 16 | b := a 17 | end 18 | begin 19 | a := b 20 | end 21 | procedure p12( 22 | begin 23 | a := b 24 | end 25 | begin 26 | a := b 27 | end 28 | procedure p2( 29 | procedure p21( 30 | begin 31 | a := b 32 | end 33 | begin 34 | a := b 35 | end 36 | begin 37 | a := b 38 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/escape-html/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "escape-html", 3 | "description": "Escape string for use in HTML", 4 | "version": "1.0.3", 5 | "license": "MIT", 6 | "keywords": [ 7 | "escape", 8 | "html", 9 | "utility" 10 | ], 11 | "repository": "component/escape-html", 12 | "devDependencies": { 13 | "benchmark": "1.0.0", 14 | "beautify-benchmark": "0.2.4" 15 | }, 16 | "files": [ 17 | "LICENSE", 18 | "Readme.md", 19 | "index.js" 20 | ], 21 | "scripts": { 22 | "bench": "node benchmark/index.js" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/external.js: -------------------------------------------------------------------------------- 1 | /* global Promise */ 2 | 'use strict'; 3 | 4 | // load the global object first: 5 | // - it should be better integrated in the system (unhandledRejection in node) 6 | // - the environment may have a custom Promise implementation (see zone.js) 7 | var ES6Promise = null; 8 | if (typeof Promise !== "undefined") { 9 | ES6Promise = Promise; 10 | } else { 11 | ES6Promise = require("lie"); 12 | } 13 | 14 | /** 15 | * Let the user use/change some implementations. 16 | */ 17 | module.exports = { 18 | Promise: ES6Promise 19 | }; 20 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.flatten/README.md: -------------------------------------------------------------------------------- 1 | # lodash.flatten v4.4.0 2 | 3 | The [lodash](https://lodash.com/) method `_.flatten` exported as a [Node.js](https://nodejs.org/) module. 4 | 5 | ## Installation 6 | 7 | Using npm: 8 | ```bash 9 | $ {sudo -H} npm i -g npm 10 | $ npm i --save lodash.flatten 11 | ``` 12 | 13 | In Node.js: 14 | ```js 15 | var flatten = require('lodash.flatten'); 16 | ``` 17 | 18 | See the [documentation](https://lodash.com/docs#flatten) or [package source](https://github.com/lodash/lodash/blob/4.4.0-npm-packages/lodash.flatten) for more details. 19 | -------------------------------------------------------------------------------- /outputs/cache/2022-03-02_10:46:00_XNFXAMEDEU/snl: -------------------------------------------------------------------------------- 1 | program p 2 | procedure p1(); 3 | procedure p11(); 4 | procedure p111(); 5 | var integer a,b; 6 | begin 7 | a := b; 8 | b := a 9 | end 10 | procedure p112(); 11 | var integer a,b; 12 | begin 13 | a := b; 14 | b := a 15 | end 16 | begin 17 | a := b 18 | end 19 | procedure p12(); 20 | begin 21 | a := b 22 | end 23 | begin 24 | a := b 25 | end 26 | procedure p2(); 27 | procedure p21(); 28 | begin 29 | a := b 30 | end 31 | begin 32 | a:=b 33 | end 34 | begin 35 | a := b 36 | end. 37 | -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:09:13_CGAAQRNMID/tk: -------------------------------------------------------------------------------- 1 | [{"type":"RESERVED","name":"program","line":1,"col":1},{"type":"ID","name":"p","line":1,"col":9},{"type":"RESERVED","name":"var","line":2,"col":1},{"type":"RESERVED","name":"integer","line":3,"col":2},{"type":"ID","name":"a","line":3,"col":10},{"type":"RESERVED","name":"begin","line":4,"col":1},{"type":"ID","name":"a","line":5,"col":2},{"type":"ASSIGN","name":":=","line":5,"col":6},{"type":"NUMBER","name":"1","line":5,"col":7},{"type":"RESERVED","name":"end","line":6,"col":1},{"type":"SEPERATOR","name":".","line":6,"col":5},{"type":"EOF","name":"EOF","line":7,"col":0}] -------------------------------------------------------------------------------- /outputs/cache/2022-03-03_23:39:25_WPARRZEACI/tk: -------------------------------------------------------------------------------- 1 | [{"type":"RESERVED","name":"program","line":1,"col":1},{"type":"ID","name":"p","line":1,"col":9},{"type":"RESERVED","name":"var","line":2,"col":1},{"type":"RESERVED","name":"integer","line":3,"col":2},{"type":"ID","name":"a","line":3,"col":10},{"type":"RESERVED","name":"begin","line":4,"col":1},{"type":"ID","name":"a","line":5,"col":2},{"type":"ASSIGN","name":":=","line":5,"col":6},{"type":"NUMBER","name":"1","line":5,"col":7},{"type":"RESERVED","name":"end","line":6,"col":1},{"type":"SEPERATOR","name":".","line":6,"col":5},{"type":"EOF","name":"EOF","line":7,"col":0}] -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.4 / 2017-09-11 2 | ================== 3 | 4 | * perf: skip parameter parsing when no parameters 5 | 6 | 1.0.3 / 2017-09-10 7 | ================== 8 | 9 | * perf: remove argument reassignment 10 | 11 | 1.0.2 / 2016-05-09 12 | ================== 13 | 14 | * perf: enable strict mode 15 | 16 | 1.0.1 / 2015-02-13 17 | ================== 18 | 19 | * Improve missing `Content-Type` header error message 20 | 21 | 1.0.0 / 2015-02-01 22 | ================== 23 | 24 | * Initial implementation, derived from `media-typer@0.3.0` 25 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.defaults/README.md: -------------------------------------------------------------------------------- 1 | # lodash.defaults v4.2.0 2 | 3 | The [lodash](https://lodash.com/) method `_.defaults` exported as a [Node.js](https://nodejs.org/) module. 4 | 5 | ## Installation 6 | 7 | Using npm: 8 | ```bash 9 | $ {sudo -H} npm i -g npm 10 | $ npm i --save lodash.defaults 11 | ``` 12 | 13 | In Node.js: 14 | ```js 15 | var defaults = require('lodash.defaults'); 16 | ``` 17 | 18 | See the [documentation](https://lodash.com/docs#defaults) or [package source](https://github.com/lodash/lodash/blob/4.2.0-npm-packages/lodash.defaults) for more details. 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/jest.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "globals": { 3 | "ts-jest": { 4 | "diagnostics": false, 5 | "tsconfig": "tsconfig.json" 6 | } 7 | }, 8 | "testEnvironment": "node", 9 | "setupFilesAfterEnv": ["jest-extended"], 10 | "testRegex": "test/tests-.+\\.ts", 11 | "testPathIgnorePatterns": ["/.+tests-.+\\.d\\.ts"], 12 | "transform": { 13 | "^.+\\.(ts|tsx)$": "ts-jest" 14 | }, 15 | "rootDir": "./", 16 | "forceExit": true, 17 | "silent": true, 18 | "testTimeout": 3000000 19 | } 20 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 9 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/lib/archivers/archive-entry.js: -------------------------------------------------------------------------------- 1 | /** 2 | * node-compress-commons 3 | * 4 | * Copyright (c) 2014 Chris Talkington, contributors. 5 | * Licensed under the MIT license. 6 | * https://github.com/archiverjs/node-compress-commons/blob/master/LICENSE-MIT 7 | */ 8 | var ArchiveEntry = module.exports = function() {}; 9 | 10 | ArchiveEntry.prototype.getName = function() {}; 11 | 12 | ArchiveEntry.prototype.getSize = function() {}; 13 | 14 | ArchiveEntry.prototype.getLastModifiedDate = function() {}; 15 | 16 | ArchiveEntry.prototype.isDirectory = function() {}; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/isarray/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name" : "isarray", 3 | "description" : "Array#isArray for older browsers", 4 | "version" : "0.0.1", 5 | "repository" : "juliangruber/isarray", 6 | "homepage": "https://github.com/juliangruber/isarray", 7 | "main" : "index.js", 8 | "scripts" : [ 9 | "index.js" 10 | ], 11 | "dependencies" : {}, 12 | "keywords": ["browser","isarray","array"], 13 | "author": { 14 | "name": "Julian Gruber", 15 | "email": "mail@juliangruber.com", 16 | "url": "http://juliangruber.com" 17 | }, 18 | "license": "MIT" 19 | } 20 | -------------------------------------------------------------------------------- /outputs/demos/c7: -------------------------------------------------------------------------------- 1 | {在一个过程声明中又有一过程声明测试} 2 | {输入n,若n<10,则输出n+10,n+10; 3 | 否则输出n-10,n-10} 4 | 5 | program example 6 | type w1=record 7 | integer x; 8 | integer y; 9 | end; 10 | var 11 | integer a; 12 | integer b; 13 | w1 c; 14 | {w2 d;语义错误} 15 | procedure sd(integer s1;var integer s2); 16 | var integer ss; 17 | procedure sss(integer a); 18 | begin 19 | write(a) 20 | end 21 | begin 22 | if s1<10 23 | then s2:=s1+10 24 | else s2:=s1-10 25 | fi; 26 | sss(s2) 27 | end 28 | begin 29 | read(a); 30 | sd(a,b); 31 | write(b) 32 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 9 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/lib/compress-commons.js: -------------------------------------------------------------------------------- 1 | /** 2 | * node-compress-commons 3 | * 4 | * Copyright (c) 2014 Chris Talkington, contributors. 5 | * Licensed under the MIT license. 6 | * https://github.com/archiverjs/node-compress-commons/blob/master/LICENSE-MIT 7 | */ 8 | module.exports = { 9 | ArchiveEntry: require('./archivers/archive-entry'), 10 | ZipArchiveEntry: require('./archivers/zip/zip-archive-entry'), 11 | ArchiveOutputStream: require('./archivers/archive-output-stream'), 12 | ZipArchiveOutputStream: require('./archivers/zip/zip-archive-output-stream') 13 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/media-typer/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.3.0 / 2014-09-07 2 | ================== 3 | 4 | * Support Node.js 0.6 5 | * Throw error when parameter format invalid on parse 6 | 7 | 0.2.0 / 2014-06-18 8 | ================== 9 | 10 | * Add `typer.format()` to format media types 11 | 12 | 0.1.0 / 2014-06-17 13 | ================== 14 | 15 | * Accept `req` as argument to `parse` 16 | * Accept `res` as argument to `parse` 17 | * Parse media type with extra LWS between type and first parameter 18 | 19 | 0.0.0 / 2014-06-13 20 | ================== 21 | 22 | * Initial implementation 23 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/methods/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2016-01-17 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.1.1 / 2014-12-30 7 | ================== 8 | 9 | * Improve `browserify` support 10 | 11 | 1.1.0 / 2014-07-05 12 | ================== 13 | 14 | * Add `CONNECT` method 15 | 16 | 1.0.1 / 2014-06-02 17 | ================== 18 | 19 | * Fix module to work with harmony transform 20 | 21 | 1.0.0 / 2014-05-08 22 | ================== 23 | 24 | * Add `PURGE` method 25 | 26 | 0.1.0 / 2013-10-28 27 | ================== 28 | 29 | * Add `http.METHODS` support 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 9 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-stream/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 9 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 9 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/readable-browser.js: -------------------------------------------------------------------------------- 1 | exports = module.exports = require('./lib/_stream_readable.js'); 2 | exports.Stream = exports; 3 | exports.Readable = exports; 4 | exports.Writable = require('./lib/_stream_writable.js'); 5 | exports.Duplex = require('./lib/_stream_duplex.js'); 6 | exports.Transform = require('./lib/_stream_transform.js'); 7 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 8 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 9 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 10 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.difference/README.md: -------------------------------------------------------------------------------- 1 | # lodash.difference v4.5.0 2 | 3 | The [lodash](https://lodash.com/) method `_.difference` exported as a [Node.js](https://nodejs.org/) module. 4 | 5 | ## Installation 6 | 7 | Using npm: 8 | ```bash 9 | $ {sudo -H} npm i -g npm 10 | $ npm i --save lodash.difference 11 | ``` 12 | 13 | In Node.js: 14 | ```js 15 | var difference = require('lodash.difference'); 16 | ``` 17 | 18 | See the [documentation](https://lodash.com/docs#difference) or [package source](https://github.com/lodash/lodash/blob/4.5.0-npm-packages/lodash.difference) for more details. 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/experimentalWarning.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | var experimentalWarnings = new Set(); 4 | 5 | function emitExperimentalWarning(feature) { 6 | if (experimentalWarnings.has(feature)) return; 7 | var msg = feature + ' is an experimental feature. This feature could ' + 8 | 'change at any time'; 9 | experimentalWarnings.add(feature); 10 | process.emitWarning(msg, 'ExperimentalWarning'); 11 | } 12 | 13 | function noop() {} 14 | 15 | module.exports.emitExperimentalWarning = process.emitWarning 16 | ? emitExperimentalWarning 17 | : noop; 18 | -------------------------------------------------------------------------------- /outputs/cache/test_program/snl: -------------------------------------------------------------------------------- 1 | program bubble 2 | var 3 | integer i,j,num; 4 | array[1..20]of integer a; 5 | procedure q(integer num); 6 | var integer i,j,k;integer t; 7 | begin 8 | i := 1; 9 | while i", 7 | "license": "MIT", 8 | "repository": { "type": "git", "url": "https://github.com/visionmedia/node-cookie-signature.git"}, 9 | "dependencies": {}, 10 | "devDependencies": { 11 | "mocha": "*", 12 | "should": "*" 13 | }, 14 | "scripts": { 15 | "test": "mocha --require should --reporter spec" 16 | }, 17 | "main": "index" 18 | } 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/experimentalWarning.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | var experimentalWarnings = new Set(); 4 | 5 | function emitExperimentalWarning(feature) { 6 | if (experimentalWarnings.has(feature)) return; 7 | var msg = feature + ' is an experimental feature. This feature could ' + 8 | 'change at any time'; 9 | experimentalWarnings.add(feature); 10 | process.emitWarning(msg, 'ExperimentalWarning'); 11 | } 12 | 13 | function noop() {} 14 | 15 | module.exports.emitExperimentalWarning = process.emitWarning 16 | ? emitExperimentalWarning 17 | : noop; 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.isplainobject/README.md: -------------------------------------------------------------------------------- 1 | # lodash.isplainobject v4.0.6 2 | 3 | The [lodash](https://lodash.com/) method `_.isPlainObject` exported as a [Node.js](https://nodejs.org/) module. 4 | 5 | ## Installation 6 | 7 | Using npm: 8 | ```bash 9 | $ {sudo -H} npm i -g npm 10 | $ npm i --save lodash.isplainobject 11 | ``` 12 | 13 | In Node.js: 14 | ```js 15 | var isPlainObject = require('lodash.isplainobject'); 16 | ``` 17 | 18 | See the [documentation](https://lodash.com/docs#isPlainObject) or [package source](https://github.com/lodash/lodash/blob/4.0.6-npm-packages/lodash.isplainobject) for more details. 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/body-parser/node_modules/qs/lib/formats.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var replace = String.prototype.replace; 4 | var percentTwenties = /%20/g; 5 | 6 | var Format = { 7 | RFC1738: 'RFC1738', 8 | RFC3986: 'RFC3986' 9 | }; 10 | 11 | module.exports = { 12 | 'default': Format.RFC3986, 13 | formatters: { 14 | RFC1738: function (value) { 15 | return replace.call(value, percentTwenties, '+'); 16 | }, 17 | RFC3986: function (value) { 18 | return String(value); 19 | } 20 | }, 21 | RFC1738: Format.RFC1738, 22 | RFC3986: Format.RFC3986 23 | }; 24 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/fs-constants/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fs-constants", 3 | "version": "1.0.0", 4 | "description": "Require constants across node and the browser", 5 | "main": "index.js", 6 | "browser": "browser.js", 7 | "dependencies": {}, 8 | "devDependencies": {}, 9 | "repository": { 10 | "type": "git", 11 | "url": "https://github.com/mafintosh/fs-constants.git" 12 | }, 13 | "author": "Mathias Buus (@mafintosh)", 14 | "license": "MIT", 15 | "bugs": { 16 | "url": "https://github.com/mafintosh/fs-constants/issues" 17 | }, 18 | "homepage": "https://github.com/mafintosh/fs-constants" 19 | } 20 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/graceful-fs/clone.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = clone 4 | 5 | var getPrototypeOf = Object.getPrototypeOf || function (obj) { 6 | return obj.__proto__ 7 | } 8 | 9 | function clone (obj) { 10 | if (obj === null || typeof obj !== 'object') 11 | return obj 12 | 13 | if (obj instanceof Object) 14 | var copy = { __proto__: getPrototypeOf(obj) } 15 | else 16 | var copy = Object.create(null) 17 | 18 | Object.getOwnPropertyNames(obj).forEach(function (key) { 19 | Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key)) 20 | }) 21 | 22 | return copy 23 | } 24 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/qs/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/qs 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver-utils/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | ## Changelog 2 | 3 | **2.1.0** — July 19, 2019 — [Diff](https://github.com/archiverjs/archiver-utils/compare/2.0.0...2.1.0) 4 | 5 | - other: less lodash (#16) 6 | - other: update dependencies 7 | 8 | **2.0.0** — August 22, 2018 — [Diff](https://github.com/archiverjs/archiver-utils/compare/1.3.0...2.0.0) 9 | 10 | - breaking: follow node LTS, remove support for versions under 6. 11 | - other: remove unused lodash dependence (#13) 12 | - test: now targeting node v10 13 | 14 | [Release Archive](https://github.com/archiverjs/archiver-utils/releases) -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/.circleci/config.yml: -------------------------------------------------------------------------------- 1 | version: 2.1 2 | orbs: 3 | node: circleci/node@4.2.1 4 | coveralls: coveralls/coveralls@1.0.6 5 | jobs: 6 | buildAndTest: 7 | # Reuse Docker container specification given by the node Orb 8 | executor: node/default 9 | steps: 10 | - checkout 11 | - node/install-packages 12 | - run: npm run build 13 | - run: npm test 14 | - coveralls/upload: 15 | flag_name: Zip-A-Folder Testing Coverage 16 | verbose: true 17 | 18 | workflows: 19 | version: 2 20 | build_and_test: 21 | jobs: 22 | - buildAndTest -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/test/inaccessible/inaccessibleFile.txt: -------------------------------------------------------------------------------- 1 | Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver-utils/README.md: -------------------------------------------------------------------------------- 1 | # Archiver Utils [![Build Status](https://travis-ci.org/archiverjs/archiver-utils.svg?branch=master)](https://travis-ci.org/archiverjs/archiver-utils) [![Build status](https://ci.appveyor.com/api/projects/status/7254ojgmlglhqbed/branch/master?svg=true)](https://ci.appveyor.com/project/ctalkington/archiver-utils/branch/master) 2 | 3 | 4 | ## Things of Interest 5 | - [Changelog](https://github.com/archiverjs/archiver-utils/releases) 6 | - [Contributing](https://github.com/archiverjs/archiver-utils/blob/master/CONTRIBUTING.md) 7 | - [MIT License](https://github.com/archiverjs/archiver-utils/blob/master/LICENSE) 8 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/reader/NodeBufferReader.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | var Uint8ArrayReader = require('./Uint8ArrayReader'); 3 | var utils = require('../utils'); 4 | 5 | function NodeBufferReader(data) { 6 | Uint8ArrayReader.call(this, data); 7 | } 8 | utils.inherits(NodeBufferReader, Uint8ArrayReader); 9 | 10 | /** 11 | * @see DataReader.readData 12 | */ 13 | NodeBufferReader.prototype.readData = function(size) { 14 | this.checkOffset(size); 15 | var result = this.data.slice(this.zero + this.index, this.zero + this.index + size); 16 | this.index += size; 17 | return result; 18 | }; 19 | module.exports = NodeBufferReader; 20 | -------------------------------------------------------------------------------- /src/lexical_analysis/model/errors.js: -------------------------------------------------------------------------------- 1 | var models = require('./models') 2 | 3 | //非法字符 4 | exports.IllegalCharacterError = function(ch){return new models.Error(`illegal character '${ch}'`)} 5 | //解析冒号出错 6 | exports.ErrorNextColon = function(ch){return new models.Error(`error next color ${ch}`)} 7 | //解析字符串出错 8 | exports.ErrorInChar = function(ch){return new models.Error(`error when parsing a char ${ch}`)} 9 | //未定义错误 10 | exports.UndefinedError = function(ch){return new models.Error(`caught an undefined error ! ${ch}`)} 11 | //程序不完整 12 | exports.NeedDot = function(){return new models.Error(`need a dot at the end of program!`)} 13 | //... -------------------------------------------------------------------------------- /outputs/demos/loop2: -------------------------------------------------------------------------------- 1 | { 循环不变式外提优化的测试程序,有过程调用情形} 2 | program pp 3 | var integer i,n,m,j,k; 4 | array [1..10] of integer a; 5 | procedure q(); 6 | begin 7 | write(100) 8 | end 9 | 10 | begin 11 | i:=0; 12 | j:=0; 13 | k:=0; 14 | while k<3 do 15 | while i<5 do 16 | m:=10*(5+j); 17 | m:=k+5; 18 | n:=i; 19 | q(); {有过程调用,不优化打开的循环} 20 | write(n); 21 | i:=i+1 22 | endwh; 23 | i:=0; 24 | k:=k+1 25 | endwh; 26 | 27 | write(m); 28 | while j<4 do {可以优化} 29 | m:=1+k; 30 | j:=j+1 31 | endwh; 32 | write(m) 33 | 34 | end. 35 | 36 | 37 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/body-parser/node_modules/qs/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/qs 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with a single custom sponsorship URL 13 | -------------------------------------------------------------------------------- /outputs/demos/exp: -------------------------------------------------------------------------------- 1 | {测试表达式的计算,运行结果为15,7} 2 | program pp 3 | type t1=integer; 4 | t2=t1; 5 | var integer v1,v2,c; 6 | t2 v3; 7 | array [2..100] of integer a; 8 | record 9 | array [1..10] of integer b; 10 | integer v4; 11 | 12 | end r1; 13 | char m1,m2; 14 | 15 | procedure f( var t1 y); 16 | 17 | var integer v11,v22; 18 | array [2..100] of char a1; 19 | begin 20 | r1.v4:=1+3*(7-5); 21 | 22 | y:= r1.v4 23 | end 24 | 25 | begin 26 | a[(3+4)*5]:=5; 27 | v1:=a[35]; 28 | 29 | if v1 < 10 then write(v1+10) 30 | else write(v1-10) 31 | fi; 32 | f(v1); 33 | write(v1) 34 | end. 35 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lazystream/test/data.md: -------------------------------------------------------------------------------- 1 | > Never mind, hey, this is really exciting, so much to find out about, so much to 2 | > look forward to, I'm quite dizzy with anticipation . . . Or is it the wind? 3 | > 4 | > There really is a lot of that now, isn't there? And wow! Hey! What's this thing 5 | > suddenly coming toward me very fast? Very, very fast. So big and flat and round, 6 | > it needs a big wide-sounding name like . . . ow . . . ound . . . round . . . 7 | > ground! That's it! That's a good name- ground! 8 | > 9 | > I wonder if it will be friends with me? 10 | > 11 | > Hello Ground! 12 | 13 | And the rest, after a sudden wet thud, was silence. 14 | -------------------------------------------------------------------------------- /outputs/demos/调用测试: -------------------------------------------------------------------------------- 1 | {深层调用测试} 2 | {输入n,若n<10,则输出n+10,20,n+10; 3 | 否则输出n-10,20,n-10} 4 | program example 5 | type w1=record 6 | integer x; 7 | integer y; 8 | end; 9 | var 10 | integer a; 11 | integer b; 12 | w1 c; 13 | 14 | procedure sd(integer s1;var integer s2); 15 | var integer ss; 16 | procedure sss(integer a); 17 | procedure ddd(integer b); 18 | begin 19 | write(b) 20 | end 21 | begin 22 | ss:=20; 23 | write(a); 24 | ddd(ss) 25 | end 26 | begin 27 | if s1<10 28 | then s2:=s1+10 29 | else s2:=s1-10 30 | fi; 31 | sss(s2) 32 | end 33 | begin 34 | read(a); 35 | sd(a,b); 36 | write(b) 37 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/call-bind/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/call-bind 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/has-symbols 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /outputs/demos/sd1: -------------------------------------------------------------------------------- 1 | program example 2 | type w1=integer; 3 | w2=record 4 | integer x; 5 | char y,z,m; 6 | end; 7 | w3=array [3..6] of integer; {haha} 8 | 9 | var integer p; 10 | w3 c; 11 | w2 d; 12 | integer a; 13 | 14 | procedure sd(integer s1;var integer s2); 15 | var integer x,y; 16 | procedure sd1(integer y); 17 | begin 18 | write(y) 19 | end 20 | begin 21 | if a=2 22 | then x:=s1*(5+7)+10 23 | else 24 | x:=s1/9; 25 | sd1(x) 26 | fi; 27 | return 28 | end 29 | 30 | begin 31 | while a<5 32 | do 33 | sd(2,a); 34 | c[3]:=a*2; 35 | c[a]:=d.x; 36 | read(p) 37 | endwh 38 | 39 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/promiseCallback.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | const PROMISE_SYMBOL = Symbol('promiseCallback'); 7 | 8 | function promiseCallback() { 9 | let resolve, reject; 10 | function callback(err, ...args) { 11 | if (err) return reject(err); 12 | resolve(args.length > 1 ? args : args[0]); 13 | } 14 | 15 | callback[PROMISE_SYMBOL] = new Promise((res, rej) => { 16 | resolve = res, reject = rej; 17 | }); 18 | 19 | return callback; 20 | } 21 | 22 | exports.promiseCallback = promiseCallback; 23 | exports.PROMISE_SYMBOL = PROMISE_SYMBOL; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/get-intrinsic/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/get-intrinsic 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/side-channel/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/side-channel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/fs-constants/README.md: -------------------------------------------------------------------------------- 1 | # fs-constants 2 | 3 | Small module that allows you to get the fs constants across 4 | Node and the browser. 5 | 6 | ``` 7 | npm install fs-constants 8 | ``` 9 | 10 | Previously you would use `require('constants')` for this in node but that has been 11 | deprecated and changed to `require('fs').constants` which does not browserify. 12 | 13 | This module uses `require('constants')` in the browser and `require('fs').constants` in node to work around this 14 | 15 | 16 | ## Usage 17 | 18 | ``` js 19 | var constants = require('fs-constants') 20 | 21 | console.log('constants:', constants) 22 | ``` 23 | 24 | ## License 25 | 26 | MIT 27 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: [ljharb] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: npm/object-inspect 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /outputs/SNL语言例子/一般例子/sd1.txt: -------------------------------------------------------------------------------- 1 | program example 2 | type w1=integer; 3 | w2=record 4 | integer x; 5 | char y,z,m; 6 | end; 7 | w3=array [3..6] of integer; {haha} 8 | 9 | var integer p; 10 | w3 c; 11 | w2 d; 12 | integer a; 13 | 14 | procedure sd(integer s1;var integer s2); 15 | var integer x,y; 16 | procedure sd1(integer y); 17 | begin 18 | write(y) 19 | end 20 | begin 21 | if a=2 22 | then x:=s1*(5+7)+10 23 | else 24 | x:=s1/9; 25 | sd1(x) 26 | fi; 27 | return 28 | end 29 | 30 | begin 31 | while a<5 32 | do 33 | sd(2,a); 34 | c[3]:=a*2; 35 | c[a]:=d.x; 36 | read(p) 37 | endwh 38 | 39 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/toidentifier/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * toidentifier 3 | * Copyright(c) 2016 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = toIdentifier 15 | 16 | /** 17 | * Trasform the given string into a JavaScript identifier 18 | * 19 | * @param {string} str 20 | * @returns {string} 21 | * @public 22 | */ 23 | 24 | function toIdentifier (str) { 25 | return str 26 | .split(' ') 27 | .map(function (token) { 28 | return token.slice(0, 1).toUpperCase() + token.slice(1) 29 | }) 30 | .join('') 31 | .replace(/[^ _0-9a-z]/gi, '') 32 | } 33 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test-core-js.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('core-js'); 4 | 5 | var inspect = require('./'); 6 | var test = require('tape'); 7 | 8 | test('Maps', function (t) { 9 | t.equal(inspect(new Map([[1, 2]])), 'Map (1) {1 => 2}'); 10 | t.end(); 11 | }); 12 | 13 | test('WeakMaps', function (t) { 14 | t.equal(inspect(new WeakMap([[{}, 2]])), 'WeakMap { ? }'); 15 | t.end(); 16 | }); 17 | 18 | test('Sets', function (t) { 19 | t.equal(inspect(new Set([[1, 2]])), 'Set (1) {[ 1, 2 ]}'); 20 | t.end(); 21 | }); 22 | 23 | test('WeakSets', function (t) { 24 | t.equal(inspect(new WeakSet([[1, 2]])), 'WeakSet { ? }'); 25 | t.end(); 26 | }); 27 | -------------------------------------------------------------------------------- /src/syntax_analysis/recursive_descent/rw.go: -------------------------------------------------------------------------------- 1 | package main 2 | 3 | import ( 4 | "encoding/json" 5 | "os" 6 | "recursive_descent_parser/model/token" 7 | ) 8 | 9 | //读取token序列 10 | func LoadTokens(file string) ([]*token.Token, error) { 11 | tokens := []*token.Token{} 12 | program, err := os.ReadFile(file) 13 | if err != nil { 14 | return nil, err 15 | } 16 | if err = json.Unmarshal(program, &tokens); err != nil { 17 | return tokens, err 18 | } 19 | return tokens, err 20 | } 21 | 22 | func Save(filePath string, tree string) error { 23 | file, err := os.Create(filePath) 24 | if err != nil { 25 | return err 26 | } 27 | defer file.Close() 28 | _, err = file.WriteString(tree) 29 | return err 30 | 31 | } 32 | -------------------------------------------------------------------------------- /outputs/test_demos/mock_program1.txt: -------------------------------------------------------------------------------- 1 | program p 2 | type 3 | t1 = integer; 4 | t2 = array[1..20]of integer; 5 | t3 = record 6 | integer a,b; 7 | char c,d; 8 | array[1..30]of char e,f; 9 | end; 10 | t4 = t1; 11 | var 12 | t1 v1; 13 | t2 v2; 14 | t3 v3; 15 | t4 v4; 16 | t5 v5; 17 | integer a,b; 18 | char c,d; 19 | array[1..20]of integer e,f; 20 | record 21 | integer a; 22 | char b; 23 | end g,h; 24 | procedure p(integer a,b;char c,d;var t1 v1;record integer a,b; end r1) 25 | procedure q(var char name;integer age) 26 | begin 27 | end -------------------------------------------------------------------------------- /outputs/cache/test_program/gene: -------------------------------------------------------------------------------- 1 | program bubble 2 | var 3 | integer i, j, num; 4 | array[1..20]of integer a; 5 | procedure q(integer num); 6 | var 7 | integer i, j, k; 8 | integer t; 9 | begin 10 | i := 1; 11 | while i { 8 | const data = Buffer.from(`TEST-${Date.now()}`) 9 | const bl = new BufferList(data) 10 | const bls = new BufferListStream(bl) 11 | t.ok(bl.slice().equals(bls.slice())) 12 | t.end() 13 | }) 14 | 15 | tape('convert from BufferListStream to BufferList', (t) => { 16 | const data = Buffer.from(`TEST-${Date.now()}`) 17 | const bls = new BufferListStream(data) 18 | const bl = new BufferList(bls) 19 | t.ok(bl.slice().equals(bls.slice())) 20 | t.end() 21 | }) 22 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/fs.realpath/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "fs.realpath", 3 | "version": "1.0.0", 4 | "description": "Use node's fs.realpath, but fall back to the JS implementation if the native one fails", 5 | "main": "index.js", 6 | "dependencies": {}, 7 | "devDependencies": {}, 8 | "scripts": { 9 | "test": "tap test/*.js --cov" 10 | }, 11 | "repository": { 12 | "type": "git", 13 | "url": "git+https://github.com/isaacs/fs.realpath.git" 14 | }, 15 | "keywords": [ 16 | "realpath", 17 | "fs", 18 | "polyfill" 19 | ], 20 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 21 | "license": "ISC", 22 | "files": [ 23 | "old.js", 24 | "index.js" 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/path-to-regexp/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "path-to-regexp", 3 | "description": "Express style path to RegExp utility", 4 | "version": "0.1.7", 5 | "files": [ 6 | "index.js", 7 | "LICENSE" 8 | ], 9 | "scripts": { 10 | "test": "istanbul cover _mocha -- -R spec" 11 | }, 12 | "keywords": [ 13 | "express", 14 | "regexp" 15 | ], 16 | "component": { 17 | "scripts": { 18 | "path-to-regexp": "index.js" 19 | } 20 | }, 21 | "license": "MIT", 22 | "repository": { 23 | "type": "git", 24 | "url": "https://github.com/component/path-to-regexp.git" 25 | }, 26 | "devDependencies": { 27 | "mocha": "^1.17.1", 28 | "istanbul": "^0.2.6" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /outputs/demos/bubble sort: -------------------------------------------------------------------------------- 1 | program bubble 2 | var 3 | integer temp; 4 | integer i, j, num; 5 | array[1..20]of integer a; 6 | procedure q(integer num); 7 | var 8 | integer i, j, k; 9 | integer t; 10 | begin 11 | i := 1; 12 | while i Simple [`setImmediate`](https://developer.mozilla.org/en-US/docs/Web/API/Window.setImmediate) shim 4 | 5 | 6 | ## Install 7 | 8 | ``` 9 | $ npm install --save set-immediate-shim 10 | ``` 11 | 12 | 13 | ## Usage 14 | 15 | ```js 16 | var setImmediateShim = require('set-immediate-shim'); 17 | 18 | setImmediateShim(function () { 19 | console.log('2'); 20 | }); 21 | 22 | console.log('1'); 23 | 24 | //=> 1 25 | //=> 2 26 | ``` 27 | 28 | 29 | ## License 30 | 31 | MIT © [Sindre Sorhus](http://sindresorhus.com) 32 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/test/isBufferList.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const tape = require('tape') 4 | const { BufferList, BufferListStream } = require('../') 5 | const { Buffer } = require('buffer') 6 | 7 | tape('isBufferList positives', (t) => { 8 | t.ok(BufferList.isBufferList(new BufferList())) 9 | t.ok(BufferList.isBufferList(new BufferListStream())) 10 | 11 | t.end() 12 | }) 13 | 14 | tape('isBufferList negatives', (t) => { 15 | const types = [ 16 | null, 17 | undefined, 18 | NaN, 19 | true, 20 | false, 21 | {}, 22 | [], 23 | Buffer.alloc(0), 24 | [Buffer.alloc(0)] 25 | ] 26 | 27 | for (const obj of types) { 28 | t.notOk(BufferList.isBufferList(obj)) 29 | } 30 | 31 | t.end() 32 | }) 33 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/inherits/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "inherits", 3 | "description": "Browser-friendly inheritance fully compatible with standard node.js inherits()", 4 | "version": "2.0.4", 5 | "keywords": [ 6 | "inheritance", 7 | "class", 8 | "klass", 9 | "oop", 10 | "object-oriented", 11 | "inherits", 12 | "browser", 13 | "browserify" 14 | ], 15 | "main": "./inherits.js", 16 | "browser": "./inherits_browser.js", 17 | "repository": "git://github.com/isaacs/inherits", 18 | "license": "ISC", 19 | "scripts": { 20 | "test": "tap" 21 | }, 22 | "devDependencies": { 23 | "tap": "^14.2.4" 24 | }, 25 | "files": [ 26 | "inherits.js", 27 | "inherits_browser.js" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/stream/Crc32Probe.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GenericWorker = require('./GenericWorker'); 4 | var crc32 = require('../crc32'); 5 | var utils = require('../utils'); 6 | 7 | /** 8 | * A worker which calculate the crc32 of the data flowing through. 9 | * @constructor 10 | */ 11 | function Crc32Probe() { 12 | GenericWorker.call(this, "Crc32Probe"); 13 | this.withStreamInfo("crc32", 0); 14 | } 15 | utils.inherits(Crc32Probe, GenericWorker); 16 | 17 | /** 18 | * @see GenericWorker.processChunk 19 | */ 20 | Crc32Probe.prototype.processChunk = function (chunk) { 21 | this.streamInfo.crc32 = crc32(chunk.data, this.streamInfo.crc32 || 0); 22 | this.push(chunk); 23 | }; 24 | module.exports = Crc32Probe; 25 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/once/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "once", 3 | "version": "1.4.0", 4 | "description": "Run a function exactly one time", 5 | "main": "once.js", 6 | "directories": { 7 | "test": "test" 8 | }, 9 | "dependencies": { 10 | "wrappy": "1" 11 | }, 12 | "devDependencies": { 13 | "tap": "^7.0.1" 14 | }, 15 | "scripts": { 16 | "test": "tap test/*.js" 17 | }, 18 | "files": [ 19 | "once.js" 20 | ], 21 | "repository": { 22 | "type": "git", 23 | "url": "git://github.com/isaacs/once" 24 | }, 25 | "keywords": [ 26 | "once", 27 | "function", 28 | "one", 29 | "single" 30 | ], 31 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 32 | "license": "ISC" 33 | } 34 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/qs/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 160 11 | quote_type = single 12 | 13 | [test/*] 14 | max_line_length = off 15 | 16 | [LICENSE.md] 17 | indent_size = off 18 | 19 | [*.md] 20 | max_line_length = off 21 | 22 | [*.json] 23 | max_line_length = off 24 | 25 | [Makefile] 26 | max_line_length = off 27 | 28 | [CHANGELOG.md] 29 | indent_style = space 30 | indent_size = 2 31 | 32 | [LICENSE] 33 | indent_size = 2 34 | max_line_length = off 35 | 36 | [coverage/**/*] 37 | indent_size = off 38 | indent_style = off 39 | indent = off 40 | max_line_length = off 41 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | sudo: false 3 | matrix: 4 | include: 5 | - node_js: "stable" 6 | env: COMMAND=lint 7 | - node_js: "lts/*" 8 | env: COMMAND=test-node 9 | - node_js: "stable" 10 | env: COMMAND=test-node 11 | - node_js: "stable" 12 | env: COMMAND=test-browser 13 | env: 14 | global: 15 | - secure: MhA8GHU42X3GWTUMaqdZVvarx4BMjhQCUGNi3kvuD/iCmKVb7gMwj4jbds7AcJdsCRsRk8bBGzZs/E7HidBJMPDa5DhgLKy9EV1s42JlHq8lVzbJeWIGgrtyJvhVUkGRy2OJjnDSgh3U6elkQmvDn74jreSQc6m/yGoPFF1nqq8= 16 | - secure: qREw6aUu2DnB+2reMuHgygSkumRiJvt7Z5Fz4uEVoraqbe65e4PGhtzypr9uIgCN43vxS2D5tAIeDbfid5VQrWFUQnrC9O5Z5qgVPsKN94zZ1tvYurXI4wRlAg58nNjkfGXWhLI3VUjjDTp5gYcMqgfe5hpEFYUPnUQkKGnaqAk= 17 | script: npm run $COMMAND 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/wrappy/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wrappy", 3 | "version": "1.0.2", 4 | "description": "Callback wrapping utility", 5 | "main": "wrappy.js", 6 | "files": [ 7 | "wrappy.js" 8 | ], 9 | "directories": { 10 | "test": "test" 11 | }, 12 | "dependencies": {}, 13 | "devDependencies": { 14 | "tap": "^2.3.1" 15 | }, 16 | "scripts": { 17 | "test": "tap --coverage test/*.js" 18 | }, 19 | "repository": { 20 | "type": "git", 21 | "url": "https://github.com/npm/wrappy" 22 | }, 23 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 24 | "license": "ISC", 25 | "bugs": { 26 | "url": "https://github.com/npm/wrappy/issues" 27 | }, 28 | "homepage": "https://github.com/npm/wrappy" 29 | } 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/body-parser/node_modules/qs/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 160 11 | quote_type = single 12 | 13 | [test/*] 14 | max_line_length = off 15 | 16 | [LICENSE.md] 17 | indent_size = off 18 | 19 | [*.md] 20 | max_line_length = off 21 | 22 | [*.json] 23 | max_line_length = off 24 | 25 | [Makefile] 26 | max_line_length = off 27 | 28 | [CHANGELOG.md] 29 | indent_style = space 30 | indent_size = 2 31 | 32 | [LICENSE] 33 | indent_size = 2 34 | max_line_length = off 35 | 36 | [coverage/**/*] 37 | indent_size = off 38 | indent_style = off 39 | indent = off 40 | max_line_length = off 41 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var hasSymbols = require('../'); 5 | var runSymbolTests = require('./tests'); 6 | 7 | test('interface', function (t) { 8 | t.equal(typeof hasSymbols, 'function', 'is a function'); 9 | t.equal(typeof hasSymbols(), 'boolean', 'returns a boolean'); 10 | t.end(); 11 | }); 12 | 13 | test('Symbols are supported', { skip: !hasSymbols() }, function (t) { 14 | runSymbolTests(t); 15 | t.end(); 16 | }); 17 | 18 | test('Symbols are not supported', { skip: hasSymbols() }, function (t) { 19 | t.equal(typeof Symbol, 'undefined', 'global Symbol is undefined'); 20 | t.equal(typeof Object.getOwnPropertySymbols, 'undefined', 'Object.getOwnPropertySymbols does not exist'); 21 | t.end(); 22 | }); 23 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/reader/Uint8ArrayReader.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | var ArrayReader = require('./ArrayReader'); 3 | var utils = require('../utils'); 4 | 5 | function Uint8ArrayReader(data) { 6 | ArrayReader.call(this, data); 7 | } 8 | utils.inherits(Uint8ArrayReader, ArrayReader); 9 | /** 10 | * @see DataReader.readData 11 | */ 12 | Uint8ArrayReader.prototype.readData = function(size) { 13 | this.checkOffset(size); 14 | if(size === 0) { 15 | // in IE10, when using subarray(idx, idx), we get the array [0x00] instead of []. 16 | return new Uint8Array(0); 17 | } 18 | var result = this.data.subarray(this.zero + this.index, this.zero + this.index + size); 19 | this.index += size; 20 | return result; 21 | }; 22 | module.exports = Uint8ArrayReader; 23 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/unmemoize.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = unmemoize; 7 | /** 8 | * Undoes a [memoize]{@link module:Utils.memoize}d function, reverting it to the original, 9 | * unmemoized form. Handy for testing. 10 | * 11 | * @name unmemoize 12 | * @static 13 | * @memberOf module:Utils 14 | * @method 15 | * @see [async.memoize]{@link module:Utils.memoize} 16 | * @category Util 17 | * @param {AsyncFunction} fn - the memoized function 18 | * @returns {AsyncFunction} a function that calls the original unmemoized function 19 | */ 20 | function unmemoize(fn) { 21 | return (...args) => { 22 | return (fn.unmemoized || fn)(...args); 23 | }; 24 | } 25 | module.exports = exports["default"]; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/stream/ConvertWorker.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GenericWorker = require('./GenericWorker'); 4 | var utils = require('../utils'); 5 | 6 | /** 7 | * A worker which convert chunks to a specified type. 8 | * @constructor 9 | * @param {String} destType the destination type. 10 | */ 11 | function ConvertWorker(destType) { 12 | GenericWorker.call(this, "ConvertWorker to " + destType); 13 | this.destType = destType; 14 | } 15 | utils.inherits(ConvertWorker, GenericWorker); 16 | 17 | /** 18 | * @see GenericWorker.processChunk 19 | */ 20 | ConvertWorker.prototype.processChunk = function (chunk) { 21 | this.push({ 22 | data : utils.transformTo(this.destType, chunk.data), 23 | meta : chunk.meta 24 | }); 25 | }; 26 | module.exports = ConvertWorker; 27 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/setprototypeof/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Wes Todd 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted, provided that the above 5 | copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 10 | SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 12 | OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 13 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/inflight/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "inflight", 3 | "version": "1.0.6", 4 | "description": "Add callbacks to requests in flight to avoid async duplication", 5 | "main": "inflight.js", 6 | "files": [ 7 | "inflight.js" 8 | ], 9 | "dependencies": { 10 | "once": "^1.3.0", 11 | "wrappy": "1" 12 | }, 13 | "devDependencies": { 14 | "tap": "^7.1.2" 15 | }, 16 | "scripts": { 17 | "test": "tap test.js --100" 18 | }, 19 | "repository": { 20 | "type": "git", 21 | "url": "https://github.com/npm/inflight.git" 22 | }, 23 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 24 | "bugs": { 25 | "url": "https://github.com/isaacs/inflight/issues" 26 | }, 27 | "homepage": "https://github.com/isaacs/inflight", 28 | "license": "ISC" 29 | } 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/dist/lib/ZipAFolder.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | import { WriteStream } from 'fs'; 3 | export declare enum COMPRESSION_LEVEL { 4 | uncompressed = 0, 5 | medium = 5, 6 | high = 9 7 | } 8 | export declare type ZipAFolderOptions = { 9 | compression?: COMPRESSION_LEVEL; 10 | customWriteStream?: WriteStream; 11 | }; 12 | export declare class ZipAFolder { 13 | static tar(srcFolder: string, tarFilePath: string | undefined, zipAFolderOptions?: ZipAFolderOptions): Promise; 14 | static zip(srcFolder: string, zipFilePath: string | undefined, zipAFolderOptions?: ZipAFolderOptions): Promise; 15 | private static compress; 16 | } 17 | export declare const zip: typeof ZipAFolder.zip; 18 | export declare const tar: typeof ZipAFolder.tar; 19 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/set-immediate-shim/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "set-immediate-shim", 3 | "version": "1.0.1", 4 | "description": "Simple setImmediate shim", 5 | "license": "MIT", 6 | "repository": "sindresorhus/set-immediate-shim", 7 | "author": { 8 | "name": "Sindre Sorhus", 9 | "email": "sindresorhus@gmail.com", 10 | "url": "sindresorhus.com" 11 | }, 12 | "engines": { 13 | "node": ">=0.10.0" 14 | }, 15 | "scripts": { 16 | "test": "node test.js" 17 | }, 18 | "files": [ 19 | "index.js" 20 | ], 21 | "keywords": [ 22 | "setImmediate", 23 | "immediate", 24 | "setTimeout", 25 | "timeout", 26 | "shim", 27 | "polyfill", 28 | "ponyfill" 29 | ], 30 | "devDependencies": { 31 | "ava": "0.0.4", 32 | "require-uncached": "^1.0.2" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/setprototypeof/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | /* eslint-env mocha */ 3 | /* eslint no-proto: 0 */ 4 | var assert = require('assert') 5 | var setPrototypeOf = require('..') 6 | 7 | describe('setProtoOf(obj, proto)', function () { 8 | it('should merge objects', function () { 9 | var obj = { a: 1, b: 2 } 10 | var proto = { b: 3, c: 4 } 11 | var mergeObj = setPrototypeOf(obj, proto) 12 | 13 | if (Object.getPrototypeOf) { 14 | assert.strictEqual(Object.getPrototypeOf(obj), proto) 15 | } else if ({ __proto__: [] } instanceof Array) { 16 | assert.strictEqual(obj.__proto__, proto) 17 | } else { 18 | assert.strictEqual(obj.a, 1) 19 | assert.strictEqual(obj.b, 2) 20 | assert.strictEqual(obj.c, 4) 21 | } 22 | assert.strictEqual(mergeObj, obj) 23 | }) 24 | }) 25 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/inflight/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/reject.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = reject; 7 | 8 | var _filter = require('./filter.js'); 9 | 10 | var _filter2 = _interopRequireDefault(_filter); 11 | 12 | var _wrapAsync = require('./wrapAsync.js'); 13 | 14 | var _wrapAsync2 = _interopRequireDefault(_wrapAsync); 15 | 16 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 17 | 18 | function reject(eachfn, arr, _iteratee, callback) { 19 | const iteratee = (0, _wrapAsync2.default)(_iteratee); 20 | return (0, _filter2.default)(eachfn, arr, (value, cb) => { 21 | iteratee(value, (err, v) => { 22 | cb(err, !v); 23 | }); 24 | }, callback); 25 | } 26 | module.exports = exports['default']; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream.Readable; 4 | Object.assign(module.exports, Stream); 5 | module.exports.Stream = Stream; 6 | } else { 7 | exports = module.exports = require('./lib/_stream_readable.js'); 8 | exports.Stream = Stream || exports; 9 | exports.Readable = exports; 10 | exports.Writable = require('./lib/_stream_writable.js'); 11 | exports.Duplex = require('./lib/_stream_duplex.js'); 12 | exports.Transform = require('./lib/_stream_transform.js'); 13 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 14 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 15 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 16 | } 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/iconv-lite/encodings/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | // Update this array if you add/rename/remove files in this directory. 4 | // We support Browserify by skipping automatic module discovery and requiring modules directly. 5 | var modules = [ 6 | require("./internal"), 7 | require("./utf16"), 8 | require("./utf7"), 9 | require("./sbcs-codec"), 10 | require("./sbcs-data"), 11 | require("./sbcs-data-generated"), 12 | require("./dbcs-codec"), 13 | require("./dbcs-data"), 14 | ]; 15 | 16 | // Put all encoding/alias/codec definitions to single object and export it. 17 | for (var i = 0; i < modules.length; i++) { 18 | var module = modules[i]; 19 | for (var enc in module) 20 | if (Object.prototype.hasOwnProperty.call(module, enc)) 21 | exports[enc] = module[enc]; 22 | } 23 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.union/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lodash.union", 3 | "version": "4.6.0", 4 | "description": "The lodash method `_.union` exported as a module.", 5 | "homepage": "https://lodash.com/", 6 | "icon": "https://lodash.com/icon.svg", 7 | "license": "MIT", 8 | "keywords": "lodash-modularized, union", 9 | "author": "John-David Dalton (http://allyoucanleet.com/)", 10 | "contributors": [ 11 | "John-David Dalton (http://allyoucanleet.com/)", 12 | "Blaine Bublitz (https://github.com/phated)", 13 | "Mathias Bynens (https://mathiasbynens.be/)" 14 | ], 15 | "repository": "lodash/lodash", 16 | "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" } 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/once/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /src/syntax_analysis/recursive_descent/model/statement/BaseType.go: -------------------------------------------------------------------------------- 1 | package statement 2 | 3 | import ( 4 | "fmt" 5 | "recursive_descent_parser/model/token_set" 6 | "recursive_descent_parser/model/tree_node" 7 | ) 8 | 9 | func BaseType() (tree_node.Kind, error) { 10 | currToken, err := token_set.Scanner.GetCurr() 11 | if err != nil { 12 | return "", err 13 | } 14 | if token_set.BaseType2Integer.Predict(currToken) { 15 | if _, err := Match(token_set.Integer); err != nil { 16 | return "", fmt.Errorf("BaseType %v", err) 17 | } 18 | return tree_node.IntegerK, nil 19 | } 20 | if token_set.BaseType2Char.Predict(currToken) { 21 | if _, err := Match(token_set.Char); err != nil { 22 | return "", fmt.Errorf("BaseType %v", err) 23 | } 24 | return tree_node.CharK, nil 25 | } 26 | return "", fmt.Errorf("base type match error!%v", currToken) 27 | } 28 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream.Readable; 4 | Object.assign(module.exports, Stream); 5 | module.exports.Stream = Stream; 6 | } else { 7 | exports = module.exports = require('./lib/_stream_readable.js'); 8 | exports.Stream = Stream || exports; 9 | exports.Readable = exports; 10 | exports.Writable = require('./lib/_stream_writable.js'); 11 | exports.Duplex = require('./lib/_stream_duplex.js'); 12 | exports.Transform = require('./lib/_stream_transform.js'); 13 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 14 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 15 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 16 | } 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.flatten/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lodash.flatten", 3 | "version": "4.4.0", 4 | "description": "The lodash method `_.flatten` exported as a module.", 5 | "homepage": "https://lodash.com/", 6 | "icon": "https://lodash.com/icon.svg", 7 | "license": "MIT", 8 | "keywords": "lodash-modularized, flatten", 9 | "author": "John-David Dalton (http://allyoucanleet.com/)", 10 | "contributors": [ 11 | "John-David Dalton (http://allyoucanleet.com/)", 12 | "Blaine Bublitz (https://github.com/phated)", 13 | "Mathias Bynens (https://mathiasbynens.be/)" 14 | ], 15 | "repository": "lodash/lodash", 16 | "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" } 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/minimatch/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/fakes.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var test = require('tape'); 5 | var hasToStringTag = require('has-tostringtag/shams')(); 6 | var forEach = require('for-each'); 7 | 8 | test('fakes', { skip: !hasToStringTag }, function (t) { 9 | forEach([ 10 | 'Array', 11 | 'Boolean', 12 | 'Date', 13 | 'Error', 14 | 'Number', 15 | 'RegExp', 16 | 'String' 17 | ], function (expected) { 18 | var faker = {}; 19 | faker[Symbol.toStringTag] = expected; 20 | 21 | t.equal( 22 | inspect(faker), 23 | '{ [Symbol(Symbol.toStringTag)]: \'' + expected + '\' }', 24 | 'faker masquerading as ' + expected + ' is not shown as one' 25 | ); 26 | }); 27 | 28 | t.end(); 29 | }); 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/util-deprecate/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "util-deprecate", 3 | "version": "1.0.2", 4 | "description": "The Node.js `util.deprecate()` function with browser support", 5 | "main": "node.js", 6 | "browser": "browser.js", 7 | "scripts": { 8 | "test": "echo \"Error: no test specified\" && exit 1" 9 | }, 10 | "repository": { 11 | "type": "git", 12 | "url": "git://github.com/TooTallNate/util-deprecate.git" 13 | }, 14 | "keywords": [ 15 | "util", 16 | "deprecate", 17 | "browserify", 18 | "browser", 19 | "node" 20 | ], 21 | "author": "Nathan Rajlich (http://n8.io/)", 22 | "license": "MIT", 23 | "bugs": { 24 | "url": "https://github.com/TooTallNate/util-deprecate/issues" 25 | }, 26 | "homepage": "https://github.com/TooTallNate/util-deprecate" 27 | } 28 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/wrappy/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream.Readable; 4 | Object.assign(module.exports, Stream); 5 | module.exports.Stream = Stream; 6 | } else { 7 | exports = module.exports = require('./lib/_stream_readable.js'); 8 | exports.Stream = Stream || exports; 9 | exports.Readable = exports; 10 | exports.Writable = require('./lib/_stream_writable.js'); 11 | exports.Duplex = require('./lib/_stream_duplex.js'); 12 | exports.Transform = require('./lib/_stream_transform.js'); 13 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 14 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 15 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 16 | } 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.defaults/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lodash.defaults", 3 | "version": "4.2.0", 4 | "description": "The lodash method `_.defaults` exported as a module.", 5 | "homepage": "https://lodash.com/", 6 | "icon": "https://lodash.com/icon.svg", 7 | "license": "MIT", 8 | "keywords": "lodash-modularized, defaults", 9 | "author": "John-David Dalton (http://allyoucanleet.com/)", 10 | "contributors": [ 11 | "John-David Dalton (http://allyoucanleet.com/)", 12 | "Blaine Bublitz (https://github.com/phated)", 13 | "Mathias Bynens (https://mathiasbynens.be/)" 14 | ], 15 | "repository": "lodash/lodash", 16 | "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" } 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream.Readable; 4 | Object.assign(module.exports, Stream); 5 | module.exports.Stream = Stream; 6 | } else { 7 | exports = module.exports = require('./lib/_stream_readable.js'); 8 | exports.Stream = Stream || exports; 9 | exports.Readable = exports; 10 | exports.Writable = require('./lib/_stream_writable.js'); 11 | exports.Duplex = require('./lib/_stream_duplex.js'); 12 | exports.Transform = require('./lib/_stream_transform.js'); 13 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 14 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 15 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 16 | } 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-stream/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream.Readable; 4 | Object.assign(module.exports, Stream); 5 | module.exports.Stream = Stream; 6 | } else { 7 | exports = module.exports = require('./lib/_stream_readable.js'); 8 | exports.Stream = Stream || exports; 9 | exports.Readable = exports; 10 | exports.Writable = require('./lib/_stream_writable.js'); 11 | exports.Duplex = require('./lib/_stream_duplex.js'); 12 | exports.Transform = require('./lib/_stream_transform.js'); 13 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 14 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 15 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 16 | } 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream.Readable; 4 | Object.assign(module.exports, Stream); 5 | module.exports.Stream = Stream; 6 | } else { 7 | exports = module.exports = require('./lib/_stream_readable.js'); 8 | exports.Stream = Stream || exports; 9 | exports.Readable = exports; 10 | exports.Writable = require('./lib/_stream_writable.js'); 11 | exports.Duplex = require('./lib/_stream_duplex.js'); 12 | exports.Transform = require('./lib/_stream_transform.js'); 13 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 14 | exports.finished = require('./lib/internal/streams/end-of-stream.js'); 15 | exports.pipeline = require('./lib/internal/streams/pipeline.js'); 16 | } 17 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.difference/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lodash.difference", 3 | "version": "4.5.0", 4 | "description": "The lodash method `_.difference` exported as a module.", 5 | "homepage": "https://lodash.com/", 6 | "icon": "https://lodash.com/icon.svg", 7 | "license": "MIT", 8 | "keywords": "lodash-modularized, difference", 9 | "author": "John-David Dalton (http://allyoucanleet.com/)", 10 | "contributors": [ 11 | "John-David Dalton (http://allyoucanleet.com/)", 12 | "Blaine Bublitz (https://github.com/phated)", 13 | "Mathias Bynens (https://mathiasbynens.be/)" 14 | ], 15 | "repository": "lodash/lodash", 16 | "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" } 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/test/shams/get-own-property-symbols.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { 6 | test('has native Symbol support', function (t) { 7 | t.equal(typeof Symbol, 'function'); 8 | t.equal(typeof Symbol(), 'symbol'); 9 | t.end(); 10 | }); 11 | return; 12 | } 13 | 14 | var hasSymbols = require('../../shams'); 15 | 16 | test('polyfilled Symbols', function (t) { 17 | /* eslint-disable global-require */ 18 | t.equal(hasSymbols(), false, 'hasSymbols is false before polyfilling'); 19 | 20 | require('get-own-property-symbols'); 21 | 22 | require('../tests')(t); 23 | 24 | var hasSymbolsAfter = hasSymbols(); 25 | t.equal(hasSymbolsAfter, true, 'hasSymbols is true after polyfilling'); 26 | /* eslint-enable global-require */ 27 | t.end(); 28 | }); 29 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/lodash.isplainobject/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "lodash.isplainobject", 3 | "version": "4.0.6", 4 | "description": "The lodash method `_.isPlainObject` exported as a module.", 5 | "homepage": "https://lodash.com/", 6 | "icon": "https://lodash.com/icon.svg", 7 | "license": "MIT", 8 | "keywords": "lodash-modularized, isplainobject", 9 | "author": "John-David Dalton (http://allyoucanleet.com/)", 10 | "contributors": [ 11 | "John-David Dalton (http://allyoucanleet.com/)", 12 | "Blaine Bublitz (https://github.com/phated)", 13 | "Mathias Bynens (https://mathiasbynens.be/)" 14 | ], 15 | "repository": "lodash/lodash", 16 | "scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" } 17 | } 18 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/wrappy/README.md: -------------------------------------------------------------------------------- 1 | # wrappy 2 | 3 | Callback wrapping utility 4 | 5 | ## USAGE 6 | 7 | ```javascript 8 | var wrappy = require("wrappy") 9 | 10 | // var wrapper = wrappy(wrapperFunction) 11 | 12 | // make sure a cb is called only once 13 | // See also: http://npm.im/once for this specific use case 14 | var once = wrappy(function (cb) { 15 | var called = false 16 | return function () { 17 | if (called) return 18 | called = true 19 | return cb.apply(this, arguments) 20 | } 21 | }) 22 | 23 | function printBoo () { 24 | console.log('boo') 25 | } 26 | // has some rando property 27 | printBoo.iAmBooPrinter = true 28 | 29 | var onlyPrintOnce = once(printBoo) 30 | 31 | onlyPrintOnce() // prints 'boo' 32 | onlyPrintOnce() // does nothing 33 | 34 | // random property is retained! 35 | assert.equal(onlyPrintOnce.iAmBooPrinter, true) 36 | ``` 37 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/graceful-fs/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) 2011-2022 Isaac Z. Schlueter, Ben Noordhuis, and Contributors 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 10 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 11 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 12 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 13 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 14 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR 15 | IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/minimatch/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "Isaac Z. Schlueter (http://blog.izs.me)", 3 | "name": "minimatch", 4 | "description": "a glob matcher in javascript", 5 | "version": "3.1.2", 6 | "publishConfig": { 7 | "tag": "v3-legacy" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git://github.com/isaacs/minimatch.git" 12 | }, 13 | "main": "minimatch.js", 14 | "scripts": { 15 | "test": "tap", 16 | "preversion": "npm test", 17 | "postversion": "npm publish", 18 | "postpublish": "git push origin --all; git push origin --tags" 19 | }, 20 | "engines": { 21 | "node": "*" 22 | }, 23 | "dependencies": { 24 | "brace-expansion": "^1.1.7" 25 | }, 26 | "devDependencies": { 27 | "tap": "^15.1.6" 28 | }, 29 | "license": "ISC", 30 | "files": [ 31 | "minimatch.js" 32 | ] 33 | } 34 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/readable.js: -------------------------------------------------------------------------------- 1 | var Stream = require('stream'); 2 | if (process.env.READABLE_STREAM === 'disable' && Stream) { 3 | module.exports = Stream; 4 | exports = module.exports = Stream.Readable; 5 | exports.Readable = Stream.Readable; 6 | exports.Writable = Stream.Writable; 7 | exports.Duplex = Stream.Duplex; 8 | exports.Transform = Stream.Transform; 9 | exports.PassThrough = Stream.PassThrough; 10 | exports.Stream = Stream; 11 | } else { 12 | exports = module.exports = require('./lib/_stream_readable.js'); 13 | exports.Stream = Stream || exports; 14 | exports.Readable = exports; 15 | exports.Writable = require('./lib/_stream_writable.js'); 16 | exports.Duplex = require('./lib/_stream_duplex.js'); 17 | exports.Transform = require('./lib/_stream_transform.js'); 18 | exports.PassThrough = require('./lib/_stream_passthrough.js'); 19 | } 20 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/has-symbols/test/shams/core-js.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | if (typeof Symbol === 'function' && typeof Symbol() === 'symbol') { 6 | test('has native Symbol support', function (t) { 7 | t.equal(typeof Symbol, 'function'); 8 | t.equal(typeof Symbol(), 'symbol'); 9 | t.end(); 10 | }); 11 | return; 12 | } 13 | 14 | var hasSymbols = require('../../shams'); 15 | 16 | test('polyfilled Symbols', function (t) { 17 | /* eslint-disable global-require */ 18 | t.equal(hasSymbols(), false, 'hasSymbols is false before polyfilling'); 19 | require('core-js/fn/symbol'); 20 | require('core-js/fn/symbol/to-string-tag'); 21 | 22 | require('../tests')(t); 23 | 24 | var hasSymbolsAfter = hasSymbols(); 25 | t.equal(hasSymbolsAfter, true, 'hasSymbols is true after polyfilling'); 26 | /* eslint-enable global-require */ 27 | t.end(); 28 | }); 29 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/path-to-regexp/History.md: -------------------------------------------------------------------------------- 1 | 0.1.7 / 2015-07-28 2 | ================== 3 | 4 | * Fixed regression with escaped round brackets and matching groups. 5 | 6 | 0.1.6 / 2015-06-19 7 | ================== 8 | 9 | * Replace `index` feature by outputting all parameters, unnamed and named. 10 | 11 | 0.1.5 / 2015-05-08 12 | ================== 13 | 14 | * Add an index property for position in match result. 15 | 16 | 0.1.4 / 2015-03-05 17 | ================== 18 | 19 | * Add license information 20 | 21 | 0.1.3 / 2014-07-06 22 | ================== 23 | 24 | * Better array support 25 | * Improved support for trailing slash in non-ending mode 26 | 27 | 0.1.0 / 2014-03-06 28 | ================== 29 | 30 | * add options.end 31 | 32 | 0.0.2 / 2013-02-10 33 | ================== 34 | 35 | * Update to match current express 36 | * add .license property to component.json 37 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 22 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/ms/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ms", 3 | "version": "2.0.0", 4 | "description": "Tiny milisecond conversion utility", 5 | "repository": "zeit/ms", 6 | "main": "./index", 7 | "files": [ 8 | "index.js" 9 | ], 10 | "scripts": { 11 | "precommit": "lint-staged", 12 | "lint": "eslint lib/* bin/*", 13 | "test": "mocha tests.js" 14 | }, 15 | "eslintConfig": { 16 | "extends": "eslint:recommended", 17 | "env": { 18 | "node": true, 19 | "es6": true 20 | } 21 | }, 22 | "lint-staged": { 23 | "*.js": [ 24 | "npm run lint", 25 | "prettier --single-quote --write", 26 | "git add" 27 | ] 28 | }, 29 | "license": "MIT", 30 | "devDependencies": { 31 | "eslint": "3.19.0", 32 | "expect.js": "0.3.1", 33 | "husky": "0.13.3", 34 | "lint-staged": "3.4.1", 35 | "mocha": "3.4.1" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/cookie-signature/History.md: -------------------------------------------------------------------------------- 1 | 1.0.6 / 2015-02-03 2 | ================== 3 | 4 | * use `npm test` instead of `make test` to run tests 5 | * clearer assertion messages when checking input 6 | 7 | 8 | 1.0.5 / 2014-09-05 9 | ================== 10 | 11 | * add license to package.json 12 | 13 | 1.0.4 / 2014-06-25 14 | ================== 15 | 16 | * corrected avoidance of timing attacks (thanks @tenbits!) 17 | 18 | 1.0.3 / 2014-01-28 19 | ================== 20 | 21 | * [incorrect] fix for timing attacks 22 | 23 | 1.0.2 / 2014-01-28 24 | ================== 25 | 26 | * fix missing repository warning 27 | * fix typo in test 28 | 29 | 1.0.1 / 2013-04-15 30 | ================== 31 | 32 | * Revert "Changed underlying HMAC algo. to sha512." 33 | * Revert "Fix for timing attacks on MAC verification." 34 | 35 | 0.0.1 / 2010-01-03 36 | ================== 37 | 38 | * Initial release 39 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/media-typer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "media-typer", 3 | "description": "Simple RFC 6838 media type parser and formatter", 4 | "version": "0.3.0", 5 | "author": "Douglas Christopher Wilson ", 6 | "license": "MIT", 7 | "repository": "jshttp/media-typer", 8 | "devDependencies": { 9 | "istanbul": "0.3.2", 10 | "mocha": "~1.21.4", 11 | "should": "~4.0.4" 12 | }, 13 | "files": [ 14 | "LICENSE", 15 | "HISTORY.md", 16 | "index.js" 17 | ], 18 | "engines": { 19 | "node": ">= 0.6" 20 | }, 21 | "scripts": { 22 | "test": "mocha --reporter spec --check-leaks --bail test/", 23 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", 24 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | if (superCtor) { 5 | ctor.super_ = superCtor 6 | ctor.prototype = Object.create(superCtor.prototype, { 7 | constructor: { 8 | value: ctor, 9 | enumerable: false, 10 | writable: true, 11 | configurable: true 12 | } 13 | }) 14 | } 15 | }; 16 | } else { 17 | // old school shim for old browsers 18 | module.exports = function inherits(ctor, superCtor) { 19 | if (superCtor) { 20 | ctor.super_ = superCtor 21 | var TempCtor = function () {} 22 | TempCtor.prototype = superCtor.prototype 23 | ctor.prototype = new TempCtor() 24 | ctor.prototype.constructor = ctor 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/ipaddr.js/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipaddr.js", 3 | "description": "A library for manipulating IPv4 and IPv6 addresses in JavaScript.", 4 | "version": "1.9.1", 5 | "author": "whitequark ", 6 | "directories": { 7 | "lib": "./lib" 8 | }, 9 | "dependencies": {}, 10 | "devDependencies": { 11 | "coffee-script": "~1.12.6", 12 | "nodeunit": "^0.11.3", 13 | "uglify-js": "~3.0.19" 14 | }, 15 | "scripts": { 16 | "test": "cake build test" 17 | }, 18 | "files": [ 19 | "lib/", 20 | "LICENSE", 21 | "ipaddr.min.js" 22 | ], 23 | "keywords": [ 24 | "ip", 25 | "ipv4", 26 | "ipv6" 27 | ], 28 | "repository": "git://github.com/whitequark/ipaddr.js", 29 | "main": "./lib/ipaddr.js", 30 | "engines": { 31 | "node": ">= 0.10" 32 | }, 33 | "license": "MIT", 34 | "types": "./lib/ipaddr.js.d.ts" 35 | } 36 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/unpipe/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "unpipe", 3 | "description": "Unpipe a stream from all destinations", 4 | "version": "1.0.0", 5 | "author": "Douglas Christopher Wilson ", 6 | "license": "MIT", 7 | "repository": "stream-utils/unpipe", 8 | "devDependencies": { 9 | "istanbul": "0.3.15", 10 | "mocha": "2.2.5", 11 | "readable-stream": "1.1.13" 12 | }, 13 | "files": [ 14 | "HISTORY.md", 15 | "LICENSE", 16 | "README.md", 17 | "index.js" 18 | ], 19 | "engines": { 20 | "node": ">= 0.8" 21 | }, 22 | "scripts": { 23 | "test": "mocha --reporter spec --bail --check-leaks test/", 24 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", 25 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-a-folder/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "outDir": "./dist", 4 | "typeRoots": ["./node_modules/@types", "./@types"], 5 | "module": "commonjs", 6 | "moduleResolution": "node", 7 | "incremental": true, 8 | "target": "es2018", 9 | "sourceMap": true, 10 | "declaration": true, 11 | "experimentalDecorators": true, 12 | "emitDecoratorMetadata": true, 13 | "removeComments": true, 14 | "pretty": true, 15 | "noUnusedLocals": true, 16 | "noUnusedParameters": true, 17 | "strictPropertyInitialization": false, 18 | "newLine": "LF", 19 | "strict": true, 20 | "importHelpers": true, 21 | "allowSyntheticDefaultImports": true, 22 | "forceConsistentCasingInFileNames": true, 23 | "skipLibCheck": true, 24 | "resolveJsonModule": true, 25 | "esModuleInterop": false 26 | }, 27 | "exclude": ["node_modules"] 28 | } 29 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/map.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = _asyncMap; 7 | 8 | var _wrapAsync = require('./wrapAsync.js'); 9 | 10 | var _wrapAsync2 = _interopRequireDefault(_wrapAsync); 11 | 12 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 13 | 14 | function _asyncMap(eachfn, arr, iteratee, callback) { 15 | arr = arr || []; 16 | var results = []; 17 | var counter = 0; 18 | var _iteratee = (0, _wrapAsync2.default)(iteratee); 19 | 20 | return eachfn(arr, (value, _, iterCb) => { 21 | var index = counter++; 22 | _iteratee(value, (err, v) => { 23 | results[index] = v; 24 | iterCb(err); 25 | }); 26 | }, err => { 27 | callback(err, results); 28 | }); 29 | } 30 | module.exports = exports['default']; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/escape-html/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # escape-html 3 | 4 | Escape string for use in HTML 5 | 6 | ## Example 7 | 8 | ```js 9 | var escape = require('escape-html'); 10 | var html = escape('foo & bar'); 11 | // -> foo & bar 12 | ``` 13 | 14 | ## Benchmark 15 | 16 | ``` 17 | $ npm run-script bench 18 | 19 | > escape-html@1.0.3 bench nodejs-escape-html 20 | > node benchmark/index.js 21 | 22 | 23 | http_parser@1.0 24 | node@0.10.33 25 | v8@3.14.5.9 26 | ares@1.9.0-DEV 27 | uv@0.10.29 28 | zlib@1.2.3 29 | modules@11 30 | openssl@1.0.1j 31 | 32 | 1 test completed. 33 | 2 tests completed. 34 | 3 tests completed. 35 | 36 | no special characters x 19,435,271 ops/sec ±0.85% (187 runs sampled) 37 | single special character x 6,132,421 ops/sec ±0.67% (194 runs sampled) 38 | many special characters x 3,175,826 ops/sec ±0.65% (193 runs sampled) 39 | ``` 40 | 41 | ## License 42 | 43 | MIT -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/bl/node_modules/readable-stream/lib/internal/streams/state.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; 4 | 5 | function highWaterMarkFrom(options, isDuplex, duplexKey) { 6 | return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; 7 | } 8 | 9 | function getHighWaterMark(state, options, duplexKey, isDuplex) { 10 | var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); 11 | 12 | if (hwm != null) { 13 | if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { 14 | var name = isDuplex ? duplexKey : 'highWaterMark'; 15 | throw new ERR_INVALID_OPT_VALUE(name, hwm); 16 | } 17 | 18 | return Math.floor(hwm); 19 | } // Default value 20 | 21 | 22 | return state.objectMode ? 16 : 16 * 1024; 23 | } 24 | 25 | module.exports = { 26 | getHighWaterMark: getHighWaterMark 27 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/archiver/node_modules/readable-stream/lib/internal/streams/state.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; 4 | 5 | function highWaterMarkFrom(options, isDuplex, duplexKey) { 6 | return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; 7 | } 8 | 9 | function getHighWaterMark(state, options, duplexKey, isDuplex) { 10 | var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); 11 | 12 | if (hwm != null) { 13 | if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { 14 | var name = isDuplex ? duplexKey : 'highWaterMark'; 15 | throw new ERR_INVALID_OPT_VALUE(name, hwm); 16 | } 17 | 18 | return Math.floor(hwm); 19 | } // Default value 20 | 21 | 22 | return state.objectMode ? 16 : 16 * 1024; 23 | } 24 | 25 | module.exports = { 26 | getHighWaterMark: getHighWaterMark 27 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/lib/util/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * node-compress-commons 3 | * 4 | * Copyright (c) 2014 Chris Talkington, contributors. 5 | * Licensed under the MIT license. 6 | * https://github.com/archiverjs/node-compress-commons/blob/master/LICENSE-MIT 7 | */ 8 | var Stream = require('stream').Stream; 9 | var PassThrough = require('readable-stream').PassThrough; 10 | 11 | var util = module.exports = {}; 12 | 13 | util.isStream = function(source) { 14 | return source instanceof Stream; 15 | }; 16 | 17 | util.normalizeInputSource = function(source) { 18 | if (source === null) { 19 | return Buffer.alloc(0); 20 | } else if (typeof source === 'string') { 21 | return Buffer.from(source); 22 | } else if (util.isStream(source) && !source._readableState) { 23 | var normalized = new PassThrough(); 24 | source.pipe(normalized); 25 | 26 | return normalized; 27 | } 28 | 29 | return source; 30 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/tar-stream/node_modules/readable-stream/lib/internal/streams/state.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; 4 | 5 | function highWaterMarkFrom(options, isDuplex, duplexKey) { 6 | return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; 7 | } 8 | 9 | function getHighWaterMark(state, options, duplexKey, isDuplex) { 10 | var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); 11 | 12 | if (hwm != null) { 13 | if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { 14 | var name = isDuplex ? duplexKey : 'highWaterMark'; 15 | throw new ERR_INVALID_OPT_VALUE(name, hwm); 16 | } 17 | 18 | return Math.floor(hwm); 19 | } // Default value 20 | 21 | 22 | return state.objectMode ? 16 : 16 * 1024; 23 | } 24 | 25 | module.exports = { 26 | getHighWaterMark: getHighWaterMark 27 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/zip-stream/node_modules/readable-stream/lib/internal/streams/state.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; 4 | 5 | function highWaterMarkFrom(options, isDuplex, duplexKey) { 6 | return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; 7 | } 8 | 9 | function getHighWaterMark(state, options, duplexKey, isDuplex) { 10 | var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); 11 | 12 | if (hwm != null) { 13 | if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { 14 | var name = isDuplex ? duplexKey : 'highWaterMark'; 15 | throw new ERR_INVALID_OPT_VALUE(name, hwm); 16 | } 17 | 18 | return Math.floor(hwm); 19 | } // Default value 20 | 21 | 22 | return state.objectMode ? 16 : 16 * 1024; 23 | } 24 | 25 | module.exports = { 26 | getHighWaterMark: getHighWaterMark 27 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/applyEach.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (eachfn) { 8 | return function applyEach(fns, ...callArgs) { 9 | const go = (0, _awaitify2.default)(function (callback) { 10 | var that = this; 11 | return eachfn(fns, (fn, cb) => { 12 | (0, _wrapAsync2.default)(fn).apply(that, callArgs.concat(cb)); 13 | }, callback); 14 | }); 15 | return go; 16 | }; 17 | }; 18 | 19 | var _wrapAsync = require('./wrapAsync.js'); 20 | 21 | var _wrapAsync2 = _interopRequireDefault(_wrapAsync); 22 | 23 | var _awaitify = require('./awaitify.js'); 24 | 25 | var _awaitify2 = _interopRequireDefault(_awaitify); 26 | 27 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 28 | 29 | module.exports = exports['default']; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/awaitify.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = awaitify; 7 | // conditionally promisify a function. 8 | // only return a promise if a callback is omitted 9 | function awaitify(asyncFn, arity = asyncFn.length) { 10 | if (!arity) throw new Error('arity is undefined'); 11 | function awaitable(...args) { 12 | if (typeof args[arity - 1] === 'function') { 13 | return asyncFn.apply(this, args); 14 | } 15 | 16 | return new Promise((resolve, reject) => { 17 | args[arity - 1] = (err, ...cbArgs) => { 18 | if (err) return reject(err); 19 | resolve(cbArgs.length > 1 ? cbArgs : cbArgs[0]); 20 | }; 21 | asyncFn.apply(this, args); 22 | }); 23 | } 24 | 25 | return awaitable; 26 | } 27 | module.exports = exports['default']; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/crc32-stream/node_modules/readable-stream/lib/internal/streams/state.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; 4 | 5 | function highWaterMarkFrom(options, isDuplex, duplexKey) { 6 | return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; 7 | } 8 | 9 | function getHighWaterMark(state, options, duplexKey, isDuplex) { 10 | var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); 11 | 12 | if (hwm != null) { 13 | if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { 14 | var name = isDuplex ? duplexKey : 'highWaterMark'; 15 | throw new ERR_INVALID_OPT_VALUE(name, hwm); 16 | } 17 | 18 | return Math.floor(hwm); 19 | } // Default value 20 | 21 | 22 | return state.objectMode ? 16 : 16 * 1024; 23 | } 24 | 25 | module.exports = { 26 | getHighWaterMark: getHighWaterMark 27 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/get-intrinsic/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "env": { 7 | "es6": true, 8 | "es2017": true, 9 | "es2020": true, 10 | "es2021": true, 11 | }, 12 | 13 | "globals": { 14 | "AggregateError": false, 15 | }, 16 | 17 | "rules": { 18 | "array-bracket-newline": 0, 19 | "array-element-newline": 0, 20 | "complexity": 0, 21 | "eqeqeq": [2, "allow-null"], 22 | "func-name-matching": 0, 23 | "id-length": 0, 24 | "max-lines-per-function": [2, 80], 25 | "max-params": [2, 4], 26 | "max-statements": 0, 27 | "max-statements-per-line": [2, { "max": 2 }], 28 | "multiline-comment-style": 0, 29 | "no-magic-numbers": 0, 30 | "operator-linebreak": [2, "before"], 31 | "sort-keys": 0, 32 | }, 33 | 34 | "overrides": [ 35 | { 36 | "files": "test/**", 37 | "rules": { 38 | "max-lines-per-function": 0, 39 | "new-cap": 0, 40 | }, 41 | }, 42 | ], 43 | } 44 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/compress-commons/node_modules/readable-stream/lib/internal/streams/state.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var ERR_INVALID_OPT_VALUE = require('../../../errors').codes.ERR_INVALID_OPT_VALUE; 4 | 5 | function highWaterMarkFrom(options, isDuplex, duplexKey) { 6 | return options.highWaterMark != null ? options.highWaterMark : isDuplex ? options[duplexKey] : null; 7 | } 8 | 9 | function getHighWaterMark(state, options, duplexKey, isDuplex) { 10 | var hwm = highWaterMarkFrom(options, isDuplex, duplexKey); 11 | 12 | if (hwm != null) { 13 | if (!(isFinite(hwm) && Math.floor(hwm) === hwm) || hwm < 0) { 14 | var name = isDuplex ? duplexKey : 'highWaterMark'; 15 | throw new ERR_INVALID_OPT_VALUE(name, hwm); 16 | } 17 | 18 | return Math.floor(hwm); 19 | } // Default value 20 | 21 | 22 | return state.objectMode ? 16 : 16 * 1024; 23 | } 24 | 25 | module.exports = { 26 | getHighWaterMark: getHighWaterMark 27 | }; -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/send/node_modules/ms/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ms", 3 | "version": "2.1.3", 4 | "description": "Tiny millisecond conversion utility", 5 | "repository": "vercel/ms", 6 | "main": "./index", 7 | "files": [ 8 | "index.js" 9 | ], 10 | "scripts": { 11 | "precommit": "lint-staged", 12 | "lint": "eslint lib/* bin/*", 13 | "test": "mocha tests.js" 14 | }, 15 | "eslintConfig": { 16 | "extends": "eslint:recommended", 17 | "env": { 18 | "node": true, 19 | "es6": true 20 | } 21 | }, 22 | "lint-staged": { 23 | "*.js": [ 24 | "npm run lint", 25 | "prettier --single-quote --write", 26 | "git add" 27 | ] 28 | }, 29 | "license": "MIT", 30 | "devDependencies": { 31 | "eslint": "4.18.2", 32 | "expect.js": "0.3.1", 33 | "husky": "0.14.3", 34 | "lint-staged": "5.0.0", 35 | "mocha": "4.0.1", 36 | "prettier": "2.0.5" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/path-is-absolute/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "path-is-absolute", 3 | "version": "1.0.1", 4 | "description": "Node.js 0.12 path.isAbsolute() ponyfill", 5 | "license": "MIT", 6 | "repository": "sindresorhus/path-is-absolute", 7 | "author": { 8 | "name": "Sindre Sorhus", 9 | "email": "sindresorhus@gmail.com", 10 | "url": "sindresorhus.com" 11 | }, 12 | "engines": { 13 | "node": ">=0.10.0" 14 | }, 15 | "scripts": { 16 | "test": "xo && node test.js" 17 | }, 18 | "files": [ 19 | "index.js" 20 | ], 21 | "keywords": [ 22 | "path", 23 | "paths", 24 | "file", 25 | "dir", 26 | "absolute", 27 | "isabsolute", 28 | "is-absolute", 29 | "built-in", 30 | "util", 31 | "utils", 32 | "core", 33 | "ponyfill", 34 | "polyfill", 35 | "shim", 36 | "is", 37 | "detect", 38 | "check" 39 | ], 40 | "devDependencies": { 41 | "xo": "^0.16.0" 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/string_decoder/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "string_decoder", 3 | "version": "1.1.1", 4 | "description": "The string_decoder module from Node core", 5 | "main": "lib/string_decoder.js", 6 | "dependencies": { 7 | "safe-buffer": "~5.1.0" 8 | }, 9 | "devDependencies": { 10 | "babel-polyfill": "^6.23.0", 11 | "core-util-is": "^1.0.2", 12 | "inherits": "^2.0.3", 13 | "tap": "~0.4.8" 14 | }, 15 | "scripts": { 16 | "test": "tap test/parallel/*.js && node test/verify-dependencies", 17 | "ci": "tap test/parallel/*.js test/ours/*.js --tap | tee test.tap && node test/verify-dependencies.js" 18 | }, 19 | "repository": { 20 | "type": "git", 21 | "url": "git://github.com/nodejs/string_decoder.git" 22 | }, 23 | "homepage": "https://github.com/nodejs/string_decoder", 24 | "keywords": [ 25 | "string", 26 | "decoder", 27 | "browser", 28 | "browserify" 29 | ], 30 | "license": "MIT" 31 | } 32 | -------------------------------------------------------------------------------- /outputs/test_demos/mock_program2.txt: -------------------------------------------------------------------------------- 1 | program p 2 | type 3 | t1 = integer; 4 | t2 = array[1..20] of integer; 5 | t3 = char; 6 | t4 = record 7 | integer a,b; 8 | char c,d; 9 | array[1..30]of char e,f; 10 | end; 11 | t5 = t1; 12 | var 13 | t1 v1; 14 | t2 v2; 15 | t3 v3; 16 | t4 v4; 17 | t5 v5; 18 | integer a,b; 19 | char c,d; 20 | array[1..20]of integer e,f; 21 | record 22 | integer a; 23 | char b; 24 | end g,h; 25 | procedure p(integer a,b;char c,d;var t1 v1;record integer a,b; end r1); 26 | type 27 | t1 = integer; 28 | var 29 | t1 v1,v2; 30 | begin 31 | read(v1); 32 | v2 := v1+1; 33 | v3 := v2+(6+5); 34 | write(v2) 35 | end 36 | procedure q(var char name;integer age); 37 | type 38 | Person = record 39 | integer age; 40 | char name; 41 | end; 42 | var 43 | Person person; 44 | begin 45 | person.name := name; 46 | person.age := age; 47 | write(person.name); 48 | return 49 | end 50 | begin 51 | read(c); 52 | read(a); 53 | q(c,a) 54 | end. -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/end-of-stream/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "end-of-stream", 3 | "version": "1.4.4", 4 | "description": "Call a callback when a readable/writable/duplex stream has completed or failed.", 5 | "repository": { 6 | "type": "git", 7 | "url": "git://github.com/mafintosh/end-of-stream.git" 8 | }, 9 | "dependencies": { 10 | "once": "^1.4.0" 11 | }, 12 | "scripts": { 13 | "test": "node test.js" 14 | }, 15 | "files": [ 16 | "index.js" 17 | ], 18 | "keywords": [ 19 | "stream", 20 | "streams", 21 | "callback", 22 | "finish", 23 | "close", 24 | "end", 25 | "wait" 26 | ], 27 | "bugs": { 28 | "url": "https://github.com/mafintosh/end-of-stream/issues" 29 | }, 30 | "homepage": "https://github.com/mafintosh/end-of-stream", 31 | "main": "index.js", 32 | "author": "Mathias Buus ", 33 | "license": "MIT", 34 | "devDependencies": { 35 | "tape": "^4.11.0" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/vary/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2017-09-23 2 | ================== 3 | 4 | * perf: improve header token parsing speed 5 | 6 | 1.1.1 / 2017-03-20 7 | ================== 8 | 9 | * perf: hoist regular expression 10 | 11 | 1.1.0 / 2015-09-29 12 | ================== 13 | 14 | * Only accept valid field names in the `field` argument 15 | - Ensures the resulting string is a valid HTTP header value 16 | 17 | 1.0.1 / 2015-07-08 18 | ================== 19 | 20 | * Fix setting empty header from empty `field` 21 | * perf: enable strict mode 22 | * perf: remove argument reassignments 23 | 24 | 1.0.0 / 2014-08-10 25 | ================== 26 | 27 | * Accept valid `Vary` header string as `field` 28 | * Add `vary.append` for low-level string manipulation 29 | * Move to `jshttp` orgainzation 30 | 31 | 0.1.0 / 2014-06-05 32 | ================== 33 | 34 | * Support array of fields to set 35 | 36 | 0.0.0 / 2014-06-04 37 | ================== 38 | 39 | * Initial release 40 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/jszip/lib/stream/DataLengthProbe.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var utils = require('../utils'); 4 | var GenericWorker = require('./GenericWorker'); 5 | 6 | /** 7 | * A worker which calculate the total length of the data flowing through. 8 | * @constructor 9 | * @param {String} propName the name used to expose the length 10 | */ 11 | function DataLengthProbe(propName) { 12 | GenericWorker.call(this, "DataLengthProbe for " + propName); 13 | this.propName = propName; 14 | this.withStreamInfo(propName, 0); 15 | } 16 | utils.inherits(DataLengthProbe, GenericWorker); 17 | 18 | /** 19 | * @see GenericWorker.processChunk 20 | */ 21 | DataLengthProbe.prototype.processChunk = function (chunk) { 22 | if(chunk) { 23 | var length = this.streamInfo[this.propName] || 0; 24 | this.streamInfo[this.propName] = length + chunk.data.length; 25 | } 26 | GenericWorker.prototype.processChunk.call(this, chunk); 27 | }; 28 | module.exports = DataLengthProbe; 29 | 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/core-util-is/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "core-util-is", 3 | "version": "1.0.3", 4 | "description": "The `util.is*` functions introduced in Node v0.12.", 5 | "main": "lib/util.js", 6 | "files": [ 7 | "lib" 8 | ], 9 | "repository": { 10 | "type": "git", 11 | "url": "git://github.com/isaacs/core-util-is" 12 | }, 13 | "keywords": [ 14 | "util", 15 | "isBuffer", 16 | "isArray", 17 | "isNumber", 18 | "isString", 19 | "isRegExp", 20 | "isThis", 21 | "isThat", 22 | "polyfill" 23 | ], 24 | "author": "Isaac Z. Schlueter (http://blog.izs.me/)", 25 | "license": "MIT", 26 | "bugs": { 27 | "url": "https://github.com/isaacs/core-util-is/issues" 28 | }, 29 | "scripts": { 30 | "test": "tap test.js", 31 | "preversion": "npm test", 32 | "postversion": "npm publish", 33 | "prepublishOnly": "git push origin --follow-tags" 34 | }, 35 | "devDependencies": { 36 | "tap": "^15.0.9" 37 | } 38 | } 39 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/safer-buffer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "safer-buffer", 3 | "version": "2.1.2", 4 | "description": "Modern Buffer API polyfill without footguns", 5 | "main": "safer.js", 6 | "scripts": { 7 | "browserify-test": "browserify --external tape tests.js > browserify-tests.js && tape browserify-tests.js", 8 | "test": "standard && tape tests.js" 9 | }, 10 | "author": { 11 | "name": "Nikita Skovoroda", 12 | "email": "chalkerx@gmail.com", 13 | "url": "https://github.com/ChALkeR" 14 | }, 15 | "license": "MIT", 16 | "repository": { 17 | "type": "git", 18 | "url": "git+https://github.com/ChALkeR/safer-buffer.git" 19 | }, 20 | "bugs": { 21 | "url": "https://github.com/ChALkeR/safer-buffer/issues" 22 | }, 23 | "devDependencies": { 24 | "standard": "^11.0.1", 25 | "tape": "^4.9.0" 26 | }, 27 | "files": [ 28 | "Porting-Buffer.md", 29 | "Readme.md", 30 | "tests.js", 31 | "dangerous.js", 32 | "safer.js" 33 | ] 34 | } 35 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/readable-stream/node_modules/safe-buffer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "safe-buffer", 3 | "description": "Safer Node.js Buffer API", 4 | "version": "5.1.2", 5 | "author": { 6 | "name": "Feross Aboukhadijeh", 7 | "email": "feross@feross.org", 8 | "url": "http://feross.org" 9 | }, 10 | "bugs": { 11 | "url": "https://github.com/feross/safe-buffer/issues" 12 | }, 13 | "devDependencies": { 14 | "standard": "*", 15 | "tape": "^4.0.0" 16 | }, 17 | "homepage": "https://github.com/feross/safe-buffer", 18 | "keywords": [ 19 | "buffer", 20 | "buffer allocate", 21 | "node security", 22 | "safe", 23 | "safe-buffer", 24 | "security", 25 | "uninitialized" 26 | ], 27 | "license": "MIT", 28 | "main": "index.js", 29 | "types": "index.d.ts", 30 | "repository": { 31 | "type": "git", 32 | "url": "git://github.com/feross/safe-buffer.git" 33 | }, 34 | "scripts": { 35 | "test": "standard && tape test/*.js" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/setprototypeof/README.md: -------------------------------------------------------------------------------- 1 | # Polyfill for `Object.setPrototypeOf` 2 | 3 | [![NPM Version](https://img.shields.io/npm/v/setprototypeof.svg)](https://npmjs.org/package/setprototypeof) 4 | [![NPM Downloads](https://img.shields.io/npm/dm/setprototypeof.svg)](https://npmjs.org/package/setprototypeof) 5 | [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](https://github.com/standard/standard) 6 | 7 | A simple cross platform implementation to set the prototype of an instianted object. Supports all modern browsers and at least back to IE8. 8 | 9 | ## Usage: 10 | 11 | ``` 12 | $ npm install --save setprototypeof 13 | ``` 14 | 15 | ```javascript 16 | var setPrototypeOf = require('setprototypeof') 17 | 18 | var obj = {} 19 | setPrototypeOf(obj, { 20 | foo: function () { 21 | return 'bar' 22 | } 23 | }) 24 | obj.foo() // bar 25 | ``` 26 | 27 | TypeScript is also supported: 28 | 29 | ```typescript 30 | import setPrototypeOf from 'setprototypeof' 31 | ``` 32 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/string_decoder/node_modules/safe-buffer/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "safe-buffer", 3 | "description": "Safer Node.js Buffer API", 4 | "version": "5.1.2", 5 | "author": { 6 | "name": "Feross Aboukhadijeh", 7 | "email": "feross@feross.org", 8 | "url": "http://feross.org" 9 | }, 10 | "bugs": { 11 | "url": "https://github.com/feross/safe-buffer/issues" 12 | }, 13 | "devDependencies": { 14 | "standard": "*", 15 | "tape": "^4.0.0" 16 | }, 17 | "homepage": "https://github.com/feross/safe-buffer", 18 | "keywords": [ 19 | "buffer", 20 | "buffer allocate", 21 | "node security", 22 | "safe", 23 | "safe-buffer", 24 | "security", 25 | "uninitialized" 26 | ], 27 | "license": "MIT", 28 | "main": "index.js", 29 | "types": "index.d.ts", 30 | "repository": { 31 | "type": "git", 32 | "url": "git://github.com/feross/safe-buffer.git" 33 | }, 34 | "scripts": { 35 | "test": "standard && tape test/*.js" 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/ee-first/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ee-first", 3 | "description": "return the first event in a set of ee/event pairs", 4 | "version": "1.1.1", 5 | "author": { 6 | "name": "Jonathan Ong", 7 | "email": "me@jongleberry.com", 8 | "url": "http://jongleberry.com", 9 | "twitter": "https://twitter.com/jongleberry" 10 | }, 11 | "contributors": [ 12 | "Douglas Christopher Wilson " 13 | ], 14 | "license": "MIT", 15 | "repository": "jonathanong/ee-first", 16 | "devDependencies": { 17 | "istanbul": "0.3.9", 18 | "mocha": "2.2.5" 19 | }, 20 | "files": [ 21 | "index.js", 22 | "LICENSE" 23 | ], 24 | "scripts": { 25 | "test": "mocha --reporter spec --bail --check-leaks test/", 26 | "test-cov": "istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot --check-leaks test/", 27 | "test-travis": "istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter spec --check-leaks test/" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/async/internal/setImmediate.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.fallback = fallback; 7 | exports.wrap = wrap; 8 | /* istanbul ignore file */ 9 | 10 | var hasQueueMicrotask = exports.hasQueueMicrotask = typeof queueMicrotask === 'function' && queueMicrotask; 11 | var hasSetImmediate = exports.hasSetImmediate = typeof setImmediate === 'function' && setImmediate; 12 | var hasNextTick = exports.hasNextTick = typeof process === 'object' && typeof process.nextTick === 'function'; 13 | 14 | function fallback(fn) { 15 | setTimeout(fn, 0); 16 | } 17 | 18 | function wrap(defer) { 19 | return (fn, ...args) => defer(() => fn(...args)); 20 | } 21 | 22 | var _defer; 23 | 24 | if (hasQueueMicrotask) { 25 | _defer = queueMicrotask; 26 | } else if (hasSetImmediate) { 27 | _defer = setImmediate; 28 | } else if (hasNextTick) { 29 | _defer = process.nextTick; 30 | } else { 31 | _defer = fallback; 32 | } 33 | 34 | exports.default = wrap(_defer); -------------------------------------------------------------------------------- /src/coordinator_webserver/node_modules/object-inspect/test/quoteStyle.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var test = require('tape'); 5 | 6 | test('quoteStyle option', function (t) { 7 | t['throws'](function () { inspect(null, { quoteStyle: false }); }, 'false is not a valid value'); 8 | t['throws'](function () { inspect(null, { quoteStyle: true }); }, 'true is not a valid value'); 9 | t['throws'](function () { inspect(null, { quoteStyle: '' }); }, '"" is not a valid value'); 10 | t['throws'](function () { inspect(null, { quoteStyle: {} }); }, '{} is not a valid value'); 11 | t['throws'](function () { inspect(null, { quoteStyle: [] }); }, '[] is not a valid value'); 12 | t['throws'](function () { inspect(null, { quoteStyle: 42 }); }, '42 is not a valid value'); 13 | t['throws'](function () { inspect(null, { quoteStyle: NaN }); }, 'NaN is not a valid value'); 14 | t['throws'](function () { inspect(null, { quoteStyle: function () {} }); }, 'a function is not a valid value'); 15 | 16 | t.end(); 17 | }); 18 | --------------------------------------------------------------------------------