├── .github └── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile ├── Dockerfile.minimal ├── LICENSE ├── Makefile ├── README.md ├── aarch64.nix ├── default.nix ├── doc ├── report0 │ ├── README.md │ ├── vethtest.jpg │ └── vethtest.pub ├── report1 │ ├── README.md │ ├── app.jpg │ ├── apps.pub │ ├── config.jpg │ ├── engine.jpg │ └── test-network.jpg ├── report2 │ ├── README.md │ └── frontend.jpg ├── report3 │ ├── FlowsApps.pub │ ├── FlowsApps │ │ ├── page01.jpg │ │ └── page02.jpg │ ├── README.md │ ├── chrome.png │ ├── flow-ui.png │ └── synthetic-network-allhands.pdf └── report4 │ ├── README.md │ ├── flowtop-impl.png │ ├── flowtop-ui.png │ └── flowtop.pub ├── frontend ├── README.md ├── client │ ├── client.js │ ├── control.html │ ├── flow.js │ ├── style.css │ └── ui.js ├── frontend.js ├── index.js ├── node_modules │ ├── .bin │ │ └── mime │ ├── .package-lock.json │ ├── accepts │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── array-flatten │ │ ├── LICENSE │ │ ├── README.md │ │ ├── array-flatten.js │ │ └── package.json │ ├── body-parser │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── read.js │ │ │ └── types │ │ │ │ ├── json.js │ │ │ │ ├── raw.js │ │ │ │ ├── text.js │ │ │ │ └── urlencoded.js │ │ └── package.json │ ├── bytes │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── call-bind │ │ ├── .eslintignore │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── callBound.js │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ ├── callBound.js │ │ │ └── index.js │ ├── content-disposition │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── content-type │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── cookie-signature │ │ ├── .npmignore │ │ ├── History.md │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── cookie │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.js │ │ └── package.json │ ├── debug │ │ ├── .coveralls.yml │ │ ├── .eslintrc │ │ ├── .npmignore │ │ ├── .travis.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── component.json │ │ ├── karma.conf.js │ │ ├── node.js │ │ ├── package.json │ │ └── src │ │ │ ├── browser.js │ │ │ ├── debug.js │ │ │ ├── index.js │ │ │ ├── inspector-log.js │ │ │ └── node.js │ ├── define-data-property │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ ├── test │ │ │ └── index.js │ │ └── tsconfig.json │ ├── depd │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ ├── lib │ │ │ └── browser │ │ │ │ └── index.js │ │ └── package.json │ ├── destroy │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── ee-first │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── encodeurl │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── es-define-property │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ ├── test │ │ │ └── index.js │ │ └── tsconfig.json │ ├── es-errors │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── eval.d.ts │ │ ├── eval.js │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ ├── range.d.ts │ │ ├── range.js │ │ ├── ref.d.ts │ │ ├── ref.js │ │ ├── syntax.d.ts │ │ ├── syntax.js │ │ ├── test │ │ │ └── index.js │ │ ├── tsconfig.json │ │ ├── type.d.ts │ │ ├── type.js │ │ ├── uri.d.ts │ │ └── uri.js │ ├── escape-html │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── etag │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── express │ │ ├── History.md │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── application.js │ │ │ ├── express.js │ │ │ ├── middleware │ │ │ │ ├── init.js │ │ │ │ └── query.js │ │ │ ├── request.js │ │ │ ├── response.js │ │ │ ├── router │ │ │ │ ├── index.js │ │ │ │ ├── layer.js │ │ │ │ └── route.js │ │ │ ├── utils.js │ │ │ └── view.js │ │ └── package.json │ ├── finalhandler │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.js │ │ └── package.json │ ├── forwarded │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── fresh │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── function-bind │ │ ├── .eslintrc │ │ ├── .github │ │ │ ├── FUNDING.yml │ │ │ └── SECURITY.md │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── implementation.js │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ ├── .eslintrc │ │ │ └── index.js │ ├── get-intrinsic │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ └── GetIntrinsic.js │ ├── gopd │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ └── index.js │ ├── has-property-descriptors │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ └── index.js │ ├── has-proto │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ ├── test │ │ │ └── index.js │ │ └── tsconfig.json │ ├── has-symbols │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── package.json │ │ ├── shams.js │ │ └── test │ │ │ ├── index.js │ │ │ ├── shams │ │ │ ├── core-js.js │ │ │ └── get-own-property-symbols.js │ │ │ └── tests.js │ ├── hasown │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ └── tsconfig.json │ ├── http-errors │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── iconv-lite │ │ ├── Changelog.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── encodings │ │ │ ├── dbcs-codec.js │ │ │ ├── dbcs-data.js │ │ │ ├── index.js │ │ │ ├── internal.js │ │ │ ├── sbcs-codec.js │ │ │ ├── sbcs-data-generated.js │ │ │ ├── sbcs-data.js │ │ │ ├── tables │ │ │ │ ├── big5-added.json │ │ │ │ ├── cp936.json │ │ │ │ ├── cp949.json │ │ │ │ ├── cp950.json │ │ │ │ ├── eucjp.json │ │ │ │ ├── gb18030-ranges.json │ │ │ │ ├── gbk-added.json │ │ │ │ └── shiftjis.json │ │ │ ├── utf16.js │ │ │ └── utf7.js │ │ ├── lib │ │ │ ├── bom-handling.js │ │ │ ├── extend-node.js │ │ │ ├── index.d.ts │ │ │ ├── index.js │ │ │ └── streams.js │ │ └── package.json │ ├── inherits │ │ ├── LICENSE │ │ ├── README.md │ │ ├── inherits.js │ │ ├── inherits_browser.js │ │ └── package.json │ ├── ipaddr.js │ │ ├── LICENSE │ │ ├── README.md │ │ ├── ipaddr.min.js │ │ ├── lib │ │ │ ├── ipaddr.js │ │ │ └── ipaddr.js.d.ts │ │ └── package.json │ ├── media-typer │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── merge-descriptors │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── methods │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── mime-db │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── db.json │ │ ├── index.js │ │ └── package.json │ ├── mime-types │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── mime │ │ ├── .npmignore │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── cli.js │ │ ├── mime.js │ │ ├── package.json │ │ ├── src │ │ │ ├── build.js │ │ │ └── test.js │ │ └── types.json │ ├── ms │ │ ├── index.js │ │ ├── license.md │ │ ├── package.json │ │ └── readme.md │ ├── negotiator │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ ├── lib │ │ │ ├── charset.js │ │ │ ├── encoding.js │ │ │ ├── language.js │ │ │ └── mediaType.js │ │ └── package.json │ ├── object-inspect │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── example │ │ │ ├── all.js │ │ │ ├── circular.js │ │ │ ├── fn.js │ │ │ └── inspect.js │ │ ├── index.js │ │ ├── package-support.json │ │ ├── package.json │ │ ├── readme.markdown │ │ ├── test-core-js.js │ │ ├── test │ │ │ ├── bigint.js │ │ │ ├── browser │ │ │ │ └── dom.js │ │ │ ├── circular.js │ │ │ ├── deep.js │ │ │ ├── element.js │ │ │ ├── err.js │ │ │ ├── fakes.js │ │ │ ├── fn.js │ │ │ ├── global.js │ │ │ ├── has.js │ │ │ ├── holes.js │ │ │ ├── indent-option.js │ │ │ ├── inspect.js │ │ │ ├── lowbyte.js │ │ │ ├── number.js │ │ │ ├── quoteStyle.js │ │ │ ├── toStringTag.js │ │ │ ├── undef.js │ │ │ └── values.js │ │ └── util.inspect.js │ ├── on-finished │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── parseurl │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── path-to-regexp │ │ ├── LICENSE │ │ ├── Readme.md │ │ ├── index.js │ │ └── package.json │ ├── proxy-addr │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── qs │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── dist │ │ │ └── qs.js │ │ ├── lib │ │ │ ├── formats.js │ │ │ ├── index.js │ │ │ ├── parse.js │ │ │ ├── stringify.js │ │ │ └── utils.js │ │ ├── package.json │ │ └── test │ │ │ ├── empty-keys-cases.js │ │ │ ├── parse.js │ │ │ ├── stringify.js │ │ │ └── utils.js │ ├── range-parser │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── raw-body │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.d.ts │ │ ├── index.js │ │ └── package.json │ ├── safe-buffer │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ └── package.json │ ├── safer-buffer │ │ ├── LICENSE │ │ ├── Porting-Buffer.md │ │ ├── Readme.md │ │ ├── dangerous.js │ │ ├── package.json │ │ ├── safer.js │ │ └── tests.js │ ├── send │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── SECURITY.md │ │ ├── index.js │ │ ├── node_modules │ │ │ ├── encodeurl │ │ │ │ ├── HISTORY.md │ │ │ │ ├── LICENSE │ │ │ │ ├── README.md │ │ │ │ ├── index.js │ │ │ │ └── package.json │ │ │ └── ms │ │ │ │ ├── index.js │ │ │ │ ├── license.md │ │ │ │ ├── package.json │ │ │ │ └── readme.md │ │ └── package.json │ ├── serve-static │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── set-function-length │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── env.d.ts │ │ ├── env.js │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ └── tsconfig.json │ ├── setprototypeof │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ └── test │ │ │ └── index.js │ ├── side-channel │ │ ├── .editorconfig │ │ ├── .eslintrc │ │ ├── .github │ │ │ └── FUNDING.yml │ │ ├── .nycrc │ │ ├── CHANGELOG.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.d.ts │ │ ├── index.js │ │ ├── package.json │ │ ├── test │ │ │ └── index.js │ │ └── tsconfig.json │ ├── statuses │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── codes.json │ │ ├── index.js │ │ └── package.json │ ├── toidentifier │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── type-is │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── unpipe │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ ├── utils-merge │ │ ├── .npmignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json │ └── vary │ │ ├── HISTORY.md │ │ ├── LICENSE │ │ ├── README.md │ │ ├── index.js │ │ └── package.json ├── package-lock.json ├── package.json ├── rushdummy.sh ├── start.js ├── test.js ├── test_assets │ ├── top_egress.profile │ └── top_ingress.profile └── udp_rate_sine_demo.js ├── run-in-vnc.sh ├── rush ├── .cargo │ └── config ├── .gitignore ├── Cargo.lock ├── Cargo.toml ├── README.md ├── rust-toolchain.toml ├── src │ ├── basic_apps.rs │ ├── checksum.rs │ ├── config.rs │ ├── engine.rs │ ├── ethernet.rs │ ├── flow.rs │ ├── header.rs │ ├── ipv4.rs │ ├── ixy82599 │ │ └── mod.rs │ ├── lib.rs │ ├── link.rs │ ├── main.rs │ ├── memory.rs │ ├── offload.rs │ ├── packet.rs │ ├── qos.rs │ ├── rawsocket_app.rs │ ├── synthetic_network.rs │ ├── tcp.rs │ └── udp.rs ├── vendor │ ├── aho-corasick │ │ ├── .cargo-checksum.json │ │ ├── COPYING │ │ ├── Cargo.toml │ │ ├── DESIGN.md │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── UNLICENSE │ │ ├── rustfmt.toml │ │ └── src │ │ │ ├── ahocorasick.rs │ │ │ ├── automaton.rs │ │ │ ├── buffer.rs │ │ │ ├── byte_frequencies.rs │ │ │ ├── classes.rs │ │ │ ├── dfa.rs │ │ │ ├── error.rs │ │ │ ├── lib.rs │ │ │ ├── nfa.rs │ │ │ ├── packed │ │ │ ├── api.rs │ │ │ ├── mod.rs │ │ │ ├── pattern.rs │ │ │ ├── rabinkarp.rs │ │ │ ├── teddy │ │ │ │ ├── README.md │ │ │ │ ├── compile.rs │ │ │ │ ├── mod.rs │ │ │ │ └── runtime.rs │ │ │ ├── tests.rs │ │ │ └── vector.rs │ │ │ ├── prefilter.rs │ │ │ ├── state_id.rs │ │ │ └── tests.rs │ ├── byteorder │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── COPYING │ │ ├── Cargo.toml │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── UNLICENSE │ │ ├── benches │ │ │ └── bench.rs │ │ ├── build.rs │ │ └── src │ │ │ ├── io.rs │ │ │ └── lib.rs │ ├── cfg-if │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── src │ │ │ └── lib.rs │ │ └── tests │ │ │ └── xcrate.rs │ ├── getrandom │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── benches │ │ │ └── mod.rs │ │ ├── build.rs │ │ ├── src │ │ │ ├── bsd_arandom.rs │ │ │ ├── custom.rs │ │ │ ├── error.rs │ │ │ ├── error_impls.rs │ │ │ ├── fuchsia.rs │ │ │ ├── ios.rs │ │ │ ├── js.rs │ │ │ ├── lib.rs │ │ │ ├── linux_android.rs │ │ │ ├── macos.rs │ │ │ ├── openbsd.rs │ │ │ ├── rdrand.rs │ │ │ ├── solaris_illumos.rs │ │ │ ├── use_file.rs │ │ │ ├── util.rs │ │ │ ├── util_libc.rs │ │ │ ├── vxworks.rs │ │ │ ├── wasi.rs │ │ │ └── windows.rs │ │ └── tests │ │ │ ├── common │ │ │ └── mod.rs │ │ │ ├── custom.rs │ │ │ ├── normal.rs │ │ │ └── rdrand.rs │ ├── itoa │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── benches │ │ │ └── bench.rs │ │ ├── src │ │ │ ├── lib.rs │ │ │ └── udiv128.rs │ │ └── tests │ │ │ └── test.rs │ ├── libc │ │ ├── .cargo-checksum.json │ │ ├── CONTRIBUTING.md │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── build.rs │ │ ├── rustfmt.toml │ │ ├── src │ │ │ ├── cloudabi │ │ │ │ ├── aarch64.rs │ │ │ │ ├── arm.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── x86.rs │ │ │ │ └── x86_64.rs │ │ │ ├── fixed_width_ints.rs │ │ │ ├── fuchsia │ │ │ │ ├── aarch64.rs │ │ │ │ ├── align.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── no_align.rs │ │ │ │ └── x86_64.rs │ │ │ ├── hermit │ │ │ │ ├── aarch64.rs │ │ │ │ ├── mod.rs │ │ │ │ └── x86_64.rs │ │ │ ├── lib.rs │ │ │ ├── macros.rs │ │ │ ├── sgx.rs │ │ │ ├── switch.rs │ │ │ ├── unix │ │ │ │ ├── align.rs │ │ │ │ ├── bsd │ │ │ │ │ ├── apple │ │ │ │ │ │ ├── b32 │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ ├── b64 │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── freebsdlike │ │ │ │ │ │ ├── dragonfly │ │ │ │ │ │ │ ├── errno.rs │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ ├── freebsd │ │ │ │ │ │ │ ├── aarch64.rs │ │ │ │ │ │ │ ├── arm.rs │ │ │ │ │ │ │ ├── freebsd11 │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ └── x86_64.rs │ │ │ │ │ │ │ ├── freebsd12 │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ └── x86_64.rs │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ ├── powerpc64.rs │ │ │ │ │ │ │ ├── x86.rs │ │ │ │ │ │ │ └── x86_64 │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── netbsdlike │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ ├── netbsd │ │ │ │ │ │ ├── aarch64.rs │ │ │ │ │ │ ├── arm.rs │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ ├── powerpc.rs │ │ │ │ │ │ ├── sparc64.rs │ │ │ │ │ │ ├── x86.rs │ │ │ │ │ │ └── x86_64.rs │ │ │ │ │ │ └── openbsd │ │ │ │ │ │ ├── aarch64.rs │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ ├── sparc64.rs │ │ │ │ │ │ ├── x86.rs │ │ │ │ │ │ └── x86_64.rs │ │ │ │ ├── haiku │ │ │ │ │ ├── b32.rs │ │ │ │ │ ├── b64.rs │ │ │ │ │ └── mod.rs │ │ │ │ ├── hermit │ │ │ │ │ ├── aarch64.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── x86_64.rs │ │ │ │ ├── linux_like │ │ │ │ │ ├── android │ │ │ │ │ │ ├── b32 │ │ │ │ │ │ │ ├── arm.rs │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ └── x86 │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ ├── b64 │ │ │ │ │ │ │ ├── aarch64 │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ └── x86_64 │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── emscripten │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ └── no_align.rs │ │ │ │ │ ├── linux │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ ├── gnu │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ ├── b32 │ │ │ │ │ │ │ │ ├── arm │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── mips │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ ├── powerpc.rs │ │ │ │ │ │ │ │ ├── sparc │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ └── x86 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ ├── b64 │ │ │ │ │ │ │ │ ├── aarch64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── mips64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ ├── powerpc64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── riscv64 │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── s390x.rs │ │ │ │ │ │ │ │ ├── sparc64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ └── x86_64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ │ ├── not_x32.rs │ │ │ │ │ │ │ │ │ └── x32.rs │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ └── no_align.rs │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ ├── musl │ │ │ │ │ │ │ ├── b32 │ │ │ │ │ │ │ │ ├── arm │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── hexagon.rs │ │ │ │ │ │ │ │ ├── mips │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ ├── powerpc.rs │ │ │ │ │ │ │ │ └── x86 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ ├── b64 │ │ │ │ │ │ │ │ ├── aarch64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ │ ├── mips64.rs │ │ │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ │ │ ├── powerpc64.rs │ │ │ │ │ │ │ │ └── x86_64 │ │ │ │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ │ └── mod.rs │ │ │ │ │ │ └── no_align.rs │ │ │ │ │ └── mod.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── newlib │ │ │ │ │ ├── aarch64 │ │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── align.rs │ │ │ │ │ ├── arm │ │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── no_align.rs │ │ │ │ ├── no_align.rs │ │ │ │ ├── redox │ │ │ │ │ └── mod.rs │ │ │ │ ├── solarish │ │ │ │ │ ├── compat.rs │ │ │ │ │ └── mod.rs │ │ │ │ └── uclibc │ │ │ │ │ ├── align.rs │ │ │ │ │ ├── arm │ │ │ │ │ ├── align.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── no_align.rs │ │ │ │ │ ├── mips │ │ │ │ │ ├── mips32 │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ └── no_align.rs │ │ │ │ │ ├── mips64 │ │ │ │ │ │ ├── align.rs │ │ │ │ │ │ ├── mod.rs │ │ │ │ │ │ └── no_align.rs │ │ │ │ │ └── mod.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ ├── no_align.rs │ │ │ │ │ └── x86_64 │ │ │ │ │ ├── align.rs │ │ │ │ │ ├── l4re.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ ├── no_align.rs │ │ │ │ │ └── other.rs │ │ │ ├── vxworks │ │ │ │ ├── aarch64.rs │ │ │ │ ├── arm.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── powerpc.rs │ │ │ │ ├── powerpc64.rs │ │ │ │ ├── x86.rs │ │ │ │ └── x86_64.rs │ │ │ ├── wasi.rs │ │ │ └── windows │ │ │ │ ├── gnu │ │ │ │ ├── align.rs │ │ │ │ └── mod.rs │ │ │ │ ├── mod.rs │ │ │ │ └── msvc.rs │ │ └── tests │ │ │ └── const_fn.rs │ ├── memchr │ │ ├── .cargo-checksum.json │ │ ├── COPYING │ │ ├── Cargo.toml │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── UNLICENSE │ │ ├── build.rs │ │ ├── rustfmt.toml │ │ ├── scripts │ │ │ └── make-byte-frequency-table │ │ └── src │ │ │ ├── cow.rs │ │ │ ├── lib.rs │ │ │ ├── memchr │ │ │ ├── c.rs │ │ │ ├── fallback.rs │ │ │ ├── iter.rs │ │ │ ├── mod.rs │ │ │ ├── naive.rs │ │ │ └── x86 │ │ │ │ ├── avx.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── sse2.rs │ │ │ │ └── sse42.rs │ │ │ ├── memmem │ │ │ ├── byte_frequencies.rs │ │ │ ├── genericsimd.rs │ │ │ ├── mod.rs │ │ │ ├── prefilter │ │ │ │ ├── fallback.rs │ │ │ │ ├── genericsimd.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── wasm.rs │ │ │ │ └── x86 │ │ │ │ │ ├── avx.rs │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── sse.rs │ │ │ ├── rabinkarp.rs │ │ │ ├── rarebytes.rs │ │ │ ├── twoway.rs │ │ │ ├── util.rs │ │ │ ├── vector.rs │ │ │ ├── wasm.rs │ │ │ └── x86 │ │ │ │ ├── avx.rs │ │ │ │ ├── mod.rs │ │ │ │ └── sse.rs │ │ │ └── tests │ │ │ ├── memchr │ │ │ ├── iter.rs │ │ │ ├── memchr.rs │ │ │ ├── mod.rs │ │ │ ├── simple.rs │ │ │ └── testdata.rs │ │ │ ├── mod.rs │ │ │ └── x86_64-soft_float.json │ ├── once_cell │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── examples │ │ │ ├── bench.rs │ │ │ ├── bench_acquire.rs │ │ │ ├── bench_vs_lazy_static.rs │ │ │ ├── lazy_static.rs │ │ │ ├── reentrant_init_deadlocks.rs │ │ │ ├── regex.rs │ │ │ └── test_synchronization.rs │ │ ├── src │ │ │ ├── imp_pl.rs │ │ │ ├── imp_std.rs │ │ │ └── lib.rs │ │ └── tests │ │ │ └── test.rs │ ├── ppv-lite86 │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ └── src │ │ │ ├── generic.rs │ │ │ ├── lib.rs │ │ │ ├── soft.rs │ │ │ ├── types.rs │ │ │ └── x86_64 │ │ │ ├── mod.rs │ │ │ └── sse2.rs │ ├── proc-macro2 │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── build.rs │ │ ├── src │ │ │ ├── detection.rs │ │ │ ├── fallback.rs │ │ │ ├── lib.rs │ │ │ ├── marker.rs │ │ │ ├── parse.rs │ │ │ └── wrapper.rs │ │ └── tests │ │ │ ├── comments.rs │ │ │ ├── features.rs │ │ │ ├── marker.rs │ │ │ ├── test.rs │ │ │ └── test_fmt.rs │ ├── quote │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── src │ │ │ ├── ext.rs │ │ │ ├── format.rs │ │ │ ├── ident_fragment.rs │ │ │ ├── lib.rs │ │ │ ├── runtime.rs │ │ │ ├── spanned.rs │ │ │ └── to_tokens.rs │ │ └── tests │ │ │ ├── compiletest.rs │ │ │ ├── test.rs │ │ │ └── ui │ │ │ ├── does-not-have-iter-interpolated-dup.rs │ │ │ ├── does-not-have-iter-interpolated.rs │ │ │ ├── does-not-have-iter-separated.rs │ │ │ ├── does-not-have-iter.rs │ │ │ ├── not-quotable.rs │ │ │ ├── not-repeatable.rs │ │ │ └── wrong-type-span.rs │ ├── rand │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── COPYRIGHT │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ └── src │ │ │ ├── distributions │ │ │ ├── bernoulli.rs │ │ │ ├── float.rs │ │ │ ├── integer.rs │ │ │ ├── mod.rs │ │ │ ├── other.rs │ │ │ ├── uniform.rs │ │ │ ├── utils.rs │ │ │ ├── weighted.rs │ │ │ └── weighted_index.rs │ │ │ ├── lib.rs │ │ │ ├── prelude.rs │ │ │ ├── rng.rs │ │ │ ├── rngs │ │ │ ├── adapter │ │ │ │ ├── mod.rs │ │ │ │ ├── read.rs │ │ │ │ └── reseeding.rs │ │ │ ├── mock.rs │ │ │ ├── mod.rs │ │ │ ├── small.rs │ │ │ ├── std.rs │ │ │ ├── thread.rs │ │ │ ├── xoshiro128plusplus.rs │ │ │ └── xoshiro256plusplus.rs │ │ │ └── seq │ │ │ ├── index.rs │ │ │ └── mod.rs │ ├── rand_chacha │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── COPYRIGHT │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ └── src │ │ │ ├── chacha.rs │ │ │ ├── guts.rs │ │ │ └── lib.rs │ ├── rand_core │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── COPYRIGHT │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ └── src │ │ │ ├── block.rs │ │ │ ├── error.rs │ │ │ ├── impls.rs │ │ │ ├── le.rs │ │ │ ├── lib.rs │ │ │ └── os.rs │ ├── rand_hc │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── COPYRIGHT │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ └── src │ │ │ ├── hc128.rs │ │ │ └── lib.rs │ ├── regex-syntax │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── benches │ │ │ └── bench.rs │ │ ├── src │ │ │ ├── ast │ │ │ │ ├── mod.rs │ │ │ │ ├── parse.rs │ │ │ │ ├── print.rs │ │ │ │ └── visitor.rs │ │ │ ├── either.rs │ │ │ ├── error.rs │ │ │ ├── hir │ │ │ │ ├── interval.rs │ │ │ │ ├── literal │ │ │ │ │ └── mod.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── print.rs │ │ │ │ ├── translate.rs │ │ │ │ └── visitor.rs │ │ │ ├── lib.rs │ │ │ ├── parser.rs │ │ │ ├── unicode.rs │ │ │ ├── unicode_tables │ │ │ │ ├── LICENSE-UNICODE │ │ │ │ ├── age.rs │ │ │ │ ├── case_folding_simple.rs │ │ │ │ ├── general_category.rs │ │ │ │ ├── grapheme_cluster_break.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── perl_decimal.rs │ │ │ │ ├── perl_space.rs │ │ │ │ ├── perl_word.rs │ │ │ │ ├── property_bool.rs │ │ │ │ ├── property_names.rs │ │ │ │ ├── property_values.rs │ │ │ │ ├── script.rs │ │ │ │ ├── script_extension.rs │ │ │ │ ├── sentence_break.rs │ │ │ │ └── word_break.rs │ │ │ └── utf8.rs │ │ └── test │ ├── regex │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── HACKING.md │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── PERFORMANCE.md │ │ ├── README.md │ │ ├── UNICODE.md │ │ ├── examples │ │ │ ├── regexdna-input.txt │ │ │ ├── regexdna-output.txt │ │ │ ├── shootout-regex-dna-bytes.rs │ │ │ ├── shootout-regex-dna-cheat.rs │ │ │ ├── shootout-regex-dna-replace.rs │ │ │ ├── shootout-regex-dna-single-cheat.rs │ │ │ ├── shootout-regex-dna-single.rs │ │ │ └── shootout-regex-dna.rs │ │ ├── rustfmt.toml │ │ ├── src │ │ │ ├── backtrack.rs │ │ │ ├── compile.rs │ │ │ ├── dfa.rs │ │ │ ├── error.rs │ │ │ ├── exec.rs │ │ │ ├── expand.rs │ │ │ ├── find_byte.rs │ │ │ ├── freqs.rs │ │ │ ├── input.rs │ │ │ ├── lib.rs │ │ │ ├── literal │ │ │ │ ├── imp.rs │ │ │ │ └── mod.rs │ │ │ ├── pattern.rs │ │ │ ├── pikevm.rs │ │ │ ├── pool.rs │ │ │ ├── prog.rs │ │ │ ├── re_builder.rs │ │ │ ├── re_bytes.rs │ │ │ ├── re_set.rs │ │ │ ├── re_trait.rs │ │ │ ├── re_unicode.rs │ │ │ ├── sparse.rs │ │ │ ├── testdata │ │ │ │ ├── LICENSE │ │ │ │ ├── README │ │ │ │ ├── basic.dat │ │ │ │ ├── nullsubexpr.dat │ │ │ │ └── repetition.dat │ │ │ └── utf8.rs │ │ ├── test │ │ └── tests │ │ │ ├── api.rs │ │ │ ├── api_str.rs │ │ │ ├── bytes.rs │ │ │ ├── consistent.rs │ │ │ ├── crates_regex.rs │ │ │ ├── crazy.rs │ │ │ ├── flags.rs │ │ │ ├── fowler.rs │ │ │ ├── macros.rs │ │ │ ├── macros_bytes.rs │ │ │ ├── macros_str.rs │ │ │ ├── misc.rs │ │ │ ├── multiline.rs │ │ │ ├── noparse.rs │ │ │ ├── regression.rs │ │ │ ├── regression_fuzz.rs │ │ │ ├── replace.rs │ │ │ ├── searcher.rs │ │ │ ├── set.rs │ │ │ ├── shortest_match.rs │ │ │ ├── suffix_reverse.rs │ │ │ ├── test_backtrack.rs │ │ │ ├── test_backtrack_bytes.rs │ │ │ ├── test_backtrack_utf8bytes.rs │ │ │ ├── test_crates_regex.rs │ │ │ ├── test_default.rs │ │ │ ├── test_default_bytes.rs │ │ │ ├── test_nfa.rs │ │ │ ├── test_nfa_bytes.rs │ │ │ ├── test_nfa_utf8bytes.rs │ │ │ ├── unicode.rs │ │ │ ├── word_boundary.rs │ │ │ ├── word_boundary_ascii.rs │ │ │ └── word_boundary_unicode.rs │ ├── ryu │ │ ├── .cargo-checksum.json │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-BOOST │ │ ├── README.md │ │ ├── benches │ │ │ └── bench.rs │ │ ├── build.rs │ │ ├── examples │ │ │ └── upstream_benchmark.rs │ │ ├── src │ │ │ ├── buffer │ │ │ │ └── mod.rs │ │ │ ├── common.rs │ │ │ ├── d2s.rs │ │ │ ├── d2s_full_table.rs │ │ │ ├── d2s_intrinsics.rs │ │ │ ├── d2s_small_table.rs │ │ │ ├── digit_table.rs │ │ │ ├── f2s.rs │ │ │ ├── f2s_intrinsics.rs │ │ │ ├── lib.rs │ │ │ ├── parse.rs │ │ │ ├── pretty │ │ │ │ ├── exponent.rs │ │ │ │ ├── mantissa.rs │ │ │ │ └── mod.rs │ │ │ ├── s2d.rs │ │ │ └── s2f.rs │ │ └── tests │ │ │ ├── common_test.rs │ │ │ ├── d2s_table_test.rs │ │ │ ├── d2s_test.rs │ │ │ ├── exhaustive.rs │ │ │ ├── f2s_test.rs │ │ │ ├── macros │ │ │ └── mod.rs │ │ │ ├── s2d_test.rs │ │ │ └── s2f_test.rs │ ├── serde │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── build.rs │ │ ├── crates-io.md │ │ └── src │ │ │ ├── de │ │ │ ├── ignored_any.rs │ │ │ ├── impls.rs │ │ │ ├── mod.rs │ │ │ ├── seed.rs │ │ │ ├── utf8.rs │ │ │ └── value.rs │ │ │ ├── integer128.rs │ │ │ ├── lib.rs │ │ │ ├── macros.rs │ │ │ ├── private │ │ │ ├── de.rs │ │ │ ├── doc.rs │ │ │ ├── mod.rs │ │ │ ├── ser.rs │ │ │ └── size_hint.rs │ │ │ ├── ser │ │ │ ├── fmt.rs │ │ │ ├── impls.rs │ │ │ ├── impossible.rs │ │ │ └── mod.rs │ │ │ └── std_error.rs │ ├── serde_derive │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── build.rs │ │ ├── crates-io.md │ │ └── src │ │ │ ├── bound.rs │ │ │ ├── de.rs │ │ │ ├── dummy.rs │ │ │ ├── fragment.rs │ │ │ ├── internals │ │ │ ├── ast.rs │ │ │ ├── attr.rs │ │ │ ├── case.rs │ │ │ ├── check.rs │ │ │ ├── ctxt.rs │ │ │ ├── mod.rs │ │ │ ├── receiver.rs │ │ │ ├── respan.rs │ │ │ └── symbol.rs │ │ │ ├── lib.rs │ │ │ ├── pretend.rs │ │ │ ├── ser.rs │ │ │ └── try.rs │ ├── serde_json │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── build.rs │ │ └── src │ │ │ ├── de.rs │ │ │ ├── error.rs │ │ │ ├── features_check │ │ │ ├── error.rs │ │ │ └── mod.rs │ │ │ ├── io │ │ │ ├── core.rs │ │ │ └── mod.rs │ │ │ ├── iter.rs │ │ │ ├── lexical │ │ │ ├── algorithm.rs │ │ │ ├── bhcomp.rs │ │ │ ├── bignum.rs │ │ │ ├── cached.rs │ │ │ ├── cached_float80.rs │ │ │ ├── digit.rs │ │ │ ├── errors.rs │ │ │ ├── exponent.rs │ │ │ ├── float.rs │ │ │ ├── large_powers.rs │ │ │ ├── large_powers32.rs │ │ │ ├── large_powers64.rs │ │ │ ├── math.rs │ │ │ ├── mod.rs │ │ │ ├── num.rs │ │ │ ├── parse.rs │ │ │ ├── rounding.rs │ │ │ ├── shift.rs │ │ │ └── small_powers.rs │ │ │ ├── lib.rs │ │ │ ├── macros.rs │ │ │ ├── map.rs │ │ │ ├── number.rs │ │ │ ├── raw.rs │ │ │ ├── read.rs │ │ │ ├── ser.rs │ │ │ └── value │ │ │ ├── de.rs │ │ │ ├── from.rs │ │ │ ├── index.rs │ │ │ ├── mod.rs │ │ │ ├── partial_eq.rs │ │ │ └── ser.rs │ ├── signal-hook-registry │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── src │ │ │ ├── half_lock.rs │ │ │ └── lib.rs │ │ └── tests │ │ │ └── unregister_signal.rs │ ├── signal-hook │ │ ├── .cargo-checksum.json │ │ ├── CHANGELOG.md │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── build.rs │ │ ├── ci-check.sh │ │ ├── examples │ │ │ └── print.rs │ │ ├── rustfmt.toml │ │ ├── src │ │ │ ├── flag.rs │ │ │ ├── iterator │ │ │ │ ├── backend.rs │ │ │ │ ├── exfiltrator │ │ │ │ │ ├── mod.rs │ │ │ │ │ ├── origin.rs │ │ │ │ │ └── raw.rs │ │ │ │ └── mod.rs │ │ │ ├── lib.rs │ │ │ └── low_level │ │ │ │ ├── channel.rs │ │ │ │ ├── extract.c │ │ │ │ ├── mod.rs │ │ │ │ ├── pipe.rs │ │ │ │ ├── siginfo.rs │ │ │ │ └── signal_details.rs │ │ └── tests │ │ │ ├── default.rs │ │ │ ├── iterator.rs │ │ │ └── shutdown.rs │ ├── syn │ │ ├── .cargo-checksum.json │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── benches │ │ │ ├── file.rs │ │ │ └── rust.rs │ │ ├── build.rs │ │ ├── src │ │ │ ├── attr.rs │ │ │ ├── await.rs │ │ │ ├── bigint.rs │ │ │ ├── buffer.rs │ │ │ ├── custom_keyword.rs │ │ │ ├── custom_punctuation.rs │ │ │ ├── data.rs │ │ │ ├── derive.rs │ │ │ ├── discouraged.rs │ │ │ ├── error.rs │ │ │ ├── export.rs │ │ │ ├── expr.rs │ │ │ ├── ext.rs │ │ │ ├── file.rs │ │ │ ├── gen │ │ │ │ ├── clone.rs │ │ │ │ ├── debug.rs │ │ │ │ ├── eq.rs │ │ │ │ ├── fold.rs │ │ │ │ ├── hash.rs │ │ │ │ ├── visit.rs │ │ │ │ └── visit_mut.rs │ │ │ ├── gen_helper.rs │ │ │ ├── generics.rs │ │ │ ├── group.rs │ │ │ ├── ident.rs │ │ │ ├── item.rs │ │ │ ├── lib.rs │ │ │ ├── lifetime.rs │ │ │ ├── lit.rs │ │ │ ├── lookahead.rs │ │ │ ├── mac.rs │ │ │ ├── macros.rs │ │ │ ├── op.rs │ │ │ ├── parse.rs │ │ │ ├── parse_macro_input.rs │ │ │ ├── parse_quote.rs │ │ │ ├── pat.rs │ │ │ ├── path.rs │ │ │ ├── print.rs │ │ │ ├── punctuated.rs │ │ │ ├── reserved.rs │ │ │ ├── sealed.rs │ │ │ ├── span.rs │ │ │ ├── spanned.rs │ │ │ ├── stmt.rs │ │ │ ├── thread.rs │ │ │ ├── token.rs │ │ │ ├── tt.rs │ │ │ ├── ty.rs │ │ │ ├── verbatim.rs │ │ │ └── whitespace.rs │ │ └── tests │ │ │ ├── .gitignore │ │ │ ├── common │ │ │ ├── eq.rs │ │ │ ├── mod.rs │ │ │ └── parse.rs │ │ │ ├── debug │ │ │ ├── gen.rs │ │ │ └── mod.rs │ │ │ ├── macros │ │ │ └── mod.rs │ │ │ ├── repo │ │ │ ├── mod.rs │ │ │ └── progress.rs │ │ │ ├── test_asyncness.rs │ │ │ ├── test_attribute.rs │ │ │ ├── test_derive_input.rs │ │ │ ├── test_expr.rs │ │ │ ├── test_generics.rs │ │ │ ├── test_grouping.rs │ │ │ ├── test_ident.rs │ │ │ ├── test_item.rs │ │ │ ├── test_iterators.rs │ │ │ ├── test_lit.rs │ │ │ ├── test_meta.rs │ │ │ ├── test_parse_buffer.rs │ │ │ ├── test_parse_stream.rs │ │ │ ├── test_pat.rs │ │ │ ├── test_path.rs │ │ │ ├── test_precedence.rs │ │ │ ├── test_receiver.rs │ │ │ ├── test_round_trip.rs │ │ │ ├── test_shebang.rs │ │ │ ├── test_should_parse.rs │ │ │ ├── test_size.rs │ │ │ ├── test_stmt.rs │ │ │ ├── test_token_trees.rs │ │ │ ├── test_ty.rs │ │ │ ├── test_visibility.rs │ │ │ └── zzz_stable.rs │ ├── unicode-xid │ │ ├── .cargo-checksum.json │ │ ├── COPYRIGHT │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-MIT │ │ ├── README.md │ │ ├── src │ │ │ ├── lib.rs │ │ │ ├── tables.rs │ │ │ └── tests.rs │ │ └── tests │ │ │ └── exhaustive_tests.rs │ └── wasi │ │ ├── .cargo-checksum.json │ │ ├── CODE_OF_CONDUCT.md │ │ ├── CONTRIBUTING.md │ │ ├── Cargo.toml │ │ ├── LICENSE-APACHE │ │ ├── LICENSE-Apache-2.0_WITH_LLVM-exception │ │ ├── LICENSE-MIT │ │ ├── ORG_CODE_OF_CONDUCT.md │ │ ├── README.md │ │ ├── SECURITY.md │ │ └── src │ │ ├── error.rs │ │ ├── lib.rs │ │ └── lib_generated.rs └── vethtest.sh ├── setup.sh └── synth-chrome └── Dockerfile /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report 4 | title: BUG 5 | labels: bug 6 | assignees: '' 7 | 8 | --- 9 | 10 | # Expected behavior 11 | 12 | 13 | 14 | # Describe the bug (unexpected behavior) 15 | 16 | 17 | 18 | # Steps to reproduce 19 | 20 | 21 | 22 | 23 | 24 | 25 | # Screenshots 26 | 27 | 28 | 29 | # System information 30 | 31 | 32 | 33 | * Device: 34 | * OS, version: 35 | * Browser, version: 36 | * Docker version: 37 | * VNC (if applicable): 38 | 39 | # Additional context 40 | 41 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Tell us if there's a feature you'd like to add or change that would be helpful. 4 | title: '[FEATURE-REQUEST]' 5 | labels: enhancement 6 | assignees: '' 7 | 8 | --- 9 | 10 | # Feature request 11 | 12 | 13 | 14 | # Why you need this 15 | 16 | 17 | 18 | # Alternatives you've considered 19 | 20 | 21 | 22 | # Additional context 23 | 24 | -------------------------------------------------------------------------------- /Dockerfile.minimal: -------------------------------------------------------------------------------- 1 | FROM ubuntu:22.04 2 | 3 | # Linux networking tools 4 | RUN apt-get update && apt-get install -y \ 5 | iproute2 ethtool iputils-ping iperf3 lsof tcpdump net-tools 6 | 7 | # Add rush (synthetic network backend / userspace proxy) 8 | COPY rush/target/release/rush /opt/lib/rush 9 | 10 | # Entrypoint / test setup 11 | ADD setup.sh /opt/lib/ 12 | WORKDIR /opt/lib 13 | CMD ["/opt/lib/setup.sh"] 14 | -------------------------------------------------------------------------------- /aarch64.nix: -------------------------------------------------------------------------------- 1 | { pkgs ? , source ? ./., version ? "dev", crossSystem ? null }: 2 | 3 | import ./default.nix { 4 | crossSystem = (import pkgs {}).lib.systems.examples.aarch64-multiplatform; 5 | source = source; 6 | version = version; 7 | } 8 | -------------------------------------------------------------------------------- /doc/report0/vethtest.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report0/vethtest.jpg -------------------------------------------------------------------------------- /doc/report0/vethtest.pub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report0/vethtest.pub -------------------------------------------------------------------------------- /doc/report1/app.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report1/app.jpg -------------------------------------------------------------------------------- /doc/report1/apps.pub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report1/apps.pub -------------------------------------------------------------------------------- /doc/report1/config.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report1/config.jpg -------------------------------------------------------------------------------- /doc/report1/engine.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report1/engine.jpg -------------------------------------------------------------------------------- /doc/report1/test-network.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report1/test-network.jpg -------------------------------------------------------------------------------- /doc/report2/frontend.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report2/frontend.jpg -------------------------------------------------------------------------------- /doc/report3/FlowsApps.pub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report3/FlowsApps.pub -------------------------------------------------------------------------------- /doc/report3/FlowsApps/page01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report3/FlowsApps/page01.jpg -------------------------------------------------------------------------------- /doc/report3/FlowsApps/page02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report3/FlowsApps/page02.jpg -------------------------------------------------------------------------------- /doc/report3/chrome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report3/chrome.png -------------------------------------------------------------------------------- /doc/report3/flow-ui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report3/flow-ui.png -------------------------------------------------------------------------------- /doc/report3/synthetic-network-allhands.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report3/synthetic-network-allhands.pdf -------------------------------------------------------------------------------- /doc/report4/flowtop-impl.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report4/flowtop-impl.png -------------------------------------------------------------------------------- /doc/report4/flowtop-ui.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report4/flowtop-ui.png -------------------------------------------------------------------------------- /doc/report4/flowtop.pub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/doc/report4/flowtop.pub -------------------------------------------------------------------------------- /frontend/index.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | module.exports = require('./client/client') 3 | -------------------------------------------------------------------------------- /frontend/node_modules/.bin/mime: -------------------------------------------------------------------------------- 1 | ../mime/cli.js -------------------------------------------------------------------------------- /frontend/node_modules/array-flatten/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "array-flatten", 3 | "version": "1.1.1", 4 | "description": "Flatten an array of nested arrays into a single flat array", 5 | "main": "array-flatten.js", 6 | "files": [ 7 | "array-flatten.js", 8 | "LICENSE" 9 | ], 10 | "scripts": { 11 | "test": "istanbul cover _mocha -- -R spec" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "git://github.com/blakeembrey/array-flatten.git" 16 | }, 17 | "keywords": [ 18 | "array", 19 | "flatten", 20 | "arguments", 21 | "depth" 22 | ], 23 | "author": { 24 | "name": "Blake Embrey", 25 | "email": "hello@blakeembrey.com", 26 | "url": "http://blakeembrey.me" 27 | }, 28 | "license": "MIT", 29 | "bugs": { 30 | "url": "https://github.com/blakeembrey/array-flatten/issues" 31 | }, 32 | "homepage": "https://github.com/blakeembrey/array-flatten", 33 | "devDependencies": { 34 | "istanbul": "^0.3.13", 35 | "mocha": "^2.2.4", 36 | "pre-commit": "^1.0.7", 37 | "standard": "^3.7.3" 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /frontend/node_modules/call-bind/.eslintignore: -------------------------------------------------------------------------------- 1 | coverage/ 2 | -------------------------------------------------------------------------------- /frontend/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 | }, 16 | } 17 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/call-bind/.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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.5 / 2023-01-29 2 | ================== 3 | 4 | * perf: skip value escaping when unnecessary 5 | 6 | 1.0.4 / 2017-09-11 7 | ================== 8 | 9 | * perf: skip parameter parsing when no parameters 10 | 11 | 1.0.3 / 2017-09-10 12 | ================== 13 | 14 | * perf: remove argument reassignment 15 | 16 | 1.0.2 / 2016-05-09 17 | ================== 18 | 19 | * perf: enable strict mode 20 | 21 | 1.0.1 / 2015-02-13 22 | ================== 23 | 24 | * Improve missing `Content-Type` header error message 25 | 26 | 1.0.0 / 2015-02-01 27 | ================== 28 | 29 | * Initial implementation, derived from `media-typer@0.3.0` 30 | -------------------------------------------------------------------------------- /frontend/node_modules/cookie-signature/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/cookie-signature/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "cookie-signature", 3 | "version": "1.0.6", 4 | "description": "Sign and unsign cookies", 5 | "keywords": ["cookie", "sign", "unsign"], 6 | "author": "TJ Holowaychuk ", 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 | -------------------------------------------------------------------------------- /frontend/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/define-data-property/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "complexity": 0, 8 | "id-length": 0, 9 | "new-cap": ["error", { 10 | "capIsNewExceptions": [ 11 | "GetIntrinsic", 12 | ], 13 | }], 14 | }, 15 | 16 | "overrides": [ 17 | { 18 | "files": "test/**", 19 | "rules": { 20 | "max-lines-per-function": "off", 21 | }, 22 | }, 23 | ], 24 | } 25 | -------------------------------------------------------------------------------- /frontend/node_modules/define-data-property/.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/define-data-property 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 | -------------------------------------------------------------------------------- /frontend/node_modules/define-data-property/.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 | -------------------------------------------------------------------------------- /frontend/node_modules/define-data-property/index.d.ts: -------------------------------------------------------------------------------- 1 | 2 | declare function defineDataProperty( 3 | obj: Record, 4 | property: keyof typeof obj, 5 | value: typeof obj[typeof property], 6 | nonEnumerable?: boolean | null, 7 | nonWritable?: boolean | null, 8 | nonConfigurable?: boolean | null, 9 | loose?: boolean 10 | ): void; 11 | 12 | export = defineDataProperty; -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/es-define-property/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "new-cap": ["error", { 8 | "capIsNewExceptions": [ 9 | "GetIntrinsic", 10 | ], 11 | }], 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /frontend/node_modules/es-define-property/.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/es-define-property 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 | -------------------------------------------------------------------------------- /frontend/node_modules/es-define-property/.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 | -------------------------------------------------------------------------------- /frontend/node_modules/es-define-property/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | All notable changes to this project will be documented in this file. 4 | 5 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) 6 | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 7 | 8 | ## v1.0.0 - 2024-02-12 9 | 10 | ### Commits 11 | 12 | - Initial implementation, tests, readme, types [`3e154e1`](https://github.com/ljharb/es-define-property/commit/3e154e11a2fee09127220f5e503bf2c0a31dd480) 13 | - Initial commit [`07d98de`](https://github.com/ljharb/es-define-property/commit/07d98de34a4dc31ff5e83a37c0c3f49e0d85cd50) 14 | - npm init [`c4eb634`](https://github.com/ljharb/es-define-property/commit/c4eb6348b0d3886aac36cef34ad2ee0665ea6f3e) 15 | - Only apps should have lockfiles [`7af86ec`](https://github.com/ljharb/es-define-property/commit/7af86ec1d311ec0b17fdfe616a25f64276903856) 16 | -------------------------------------------------------------------------------- /frontend/node_modules/es-define-property/index.d.ts: -------------------------------------------------------------------------------- 1 | declare const defineProperty: false | typeof Object.defineProperty; 2 | 3 | export = defineProperty; -------------------------------------------------------------------------------- /frontend/node_modules/es-define-property/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GetIntrinsic = require('get-intrinsic'); 4 | 5 | /** @type {import('.')} */ 6 | var $defineProperty = GetIntrinsic('%Object.defineProperty%', true) || false; 7 | if ($defineProperty) { 8 | try { 9 | $defineProperty({}, 'a', { value: 1 }); 10 | } catch (e) { 11 | // IE 8 has a broken defineProperty 12 | $defineProperty = false; 13 | } 14 | } 15 | 16 | module.exports = $defineProperty; 17 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/.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/es-errors 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 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/eval.d.ts: -------------------------------------------------------------------------------- 1 | declare const EvalError: EvalErrorConstructor; 2 | 3 | export = EvalError; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/eval.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./eval')} */ 4 | module.exports = EvalError; 5 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/index.d.ts: -------------------------------------------------------------------------------- 1 | declare const Error: ErrorConstructor; 2 | 3 | export = Error; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('.')} */ 4 | module.exports = Error; 5 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/range.d.ts: -------------------------------------------------------------------------------- 1 | declare const RangeError: RangeErrorConstructor; 2 | 3 | export = RangeError; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/range.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./range')} */ 4 | module.exports = RangeError; 5 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/ref.d.ts: -------------------------------------------------------------------------------- 1 | declare const ReferenceError: ReferenceErrorConstructor; 2 | 3 | export = ReferenceError; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/ref.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./ref')} */ 4 | module.exports = ReferenceError; 5 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/syntax.d.ts: -------------------------------------------------------------------------------- 1 | declare const SyntaxError: SyntaxErrorConstructor; 2 | 3 | export = SyntaxError; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/syntax.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./syntax')} */ 4 | module.exports = SyntaxError; 5 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | 5 | var E = require('../'); 6 | var R = require('../range'); 7 | var Ref = require('../ref'); 8 | var S = require('../syntax'); 9 | var T = require('../type'); 10 | 11 | test('errors', function (t) { 12 | t.equal(E, Error); 13 | t.equal(R, RangeError); 14 | t.equal(Ref, ReferenceError); 15 | t.equal(S, SyntaxError); 16 | t.equal(T, TypeError); 17 | 18 | t.end(); 19 | }); 20 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/type.d.ts: -------------------------------------------------------------------------------- 1 | declare const TypeError: TypeErrorConstructor 2 | 3 | export = TypeError; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/type.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./type')} */ 4 | module.exports = TypeError; 5 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/uri.d.ts: -------------------------------------------------------------------------------- 1 | declare const URIError: URIErrorConstructor; 2 | 3 | export = URIError; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/es-errors/uri.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | /** @type {import('./uri')} */ 4 | module.exports = URIError; 5 | -------------------------------------------------------------------------------- /frontend/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 -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/express/lib/middleware/init.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 | /** 12 | * Module dependencies. 13 | * @private 14 | */ 15 | 16 | var setPrototypeOf = require('setprototypeof') 17 | 18 | /** 19 | * Initialization middleware, exposing the 20 | * request and response to each other, as well 21 | * as defaulting the X-Powered-By header field. 22 | * 23 | * @param {Function} app 24 | * @return {Function} 25 | * @api private 26 | */ 27 | 28 | exports.init = function(app){ 29 | return function expressInit(req, res, next){ 30 | if (app.enabled('x-powered-by')) res.setHeader('X-Powered-By', 'Express'); 31 | req.res = res; 32 | res.req = req; 33 | req.next = next; 34 | 35 | setPrototypeOf(req, app.request) 36 | setPrototypeOf(res, app.response) 37 | 38 | res.locals = res.locals || Object.create(null); 39 | 40 | next(); 41 | }; 42 | }; 43 | 44 | -------------------------------------------------------------------------------- /frontend/node_modules/express/lib/middleware/query.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 | /** 12 | * Module dependencies. 13 | */ 14 | 15 | var merge = require('utils-merge') 16 | var parseUrl = require('parseurl'); 17 | var qs = require('qs'); 18 | 19 | /** 20 | * @param {Object} options 21 | * @return {Function} 22 | * @api public 23 | */ 24 | 25 | module.exports = function query(options) { 26 | var opts = merge({}, options) 27 | var queryparse = qs.parse; 28 | 29 | if (typeof options === 'function') { 30 | queryparse = options; 31 | opts = undefined; 32 | } 33 | 34 | if (opts !== undefined && opts.allowPrototypes === undefined) { 35 | // back-compat for qs module 36 | opts.allowPrototypes = true; 37 | } 38 | 39 | return function query(req, res, next){ 40 | if (!req.query) { 41 | var val = parseUrl(req).query; 42 | req.query = queryparse(val, opts); 43 | } 44 | 45 | next(); 46 | }; 47 | }; 48 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | "no-new-func": [1], 10 | }, 11 | 12 | "overrides": [ 13 | { 14 | "files": "test/**", 15 | "rules": { 16 | "max-lines-per-function": 0, 17 | "strict": [0] 18 | }, 19 | }, 20 | ], 21 | } 22 | -------------------------------------------------------------------------------- /frontend/node_modules/function-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/function-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 | -------------------------------------------------------------------------------- /frontend/node_modules/function-bind/.github/SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security 2 | 3 | Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report. 4 | -------------------------------------------------------------------------------- /frontend/node_modules/function-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 | -------------------------------------------------------------------------------- /frontend/node_modules/function-bind/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var implementation = require('./implementation'); 4 | 5 | module.exports = Function.prototype.bind || implementation; 6 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | "es2022": true, 12 | }, 13 | 14 | "rules": { 15 | "array-bracket-newline": 0, 16 | "complexity": 0, 17 | "eqeqeq": [2, "allow-null"], 18 | "func-name-matching": 0, 19 | "id-length": 0, 20 | "max-lines": 0, 21 | "max-lines-per-function": [2, 90], 22 | "max-params": [2, 4], 23 | "max-statements": 0, 24 | "max-statements-per-line": [2, { "max": 2 }], 25 | "multiline-comment-style": 0, 26 | "no-magic-numbers": 0, 27 | "sort-keys": 0, 28 | }, 29 | 30 | "overrides": [ 31 | { 32 | "files": "test/**", 33 | "rules": { 34 | "new-cap": 0, 35 | }, 36 | }, 37 | ], 38 | } 39 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/get-intrinsic/.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 | -------------------------------------------------------------------------------- /frontend/node_modules/gopd/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "func-style": [2, "declaration"], 8 | "id-length": 0, 9 | "multiline-comment-style": 0, 10 | "new-cap": [2, { 11 | "capIsNewExceptions": [ 12 | "GetIntrinsic", 13 | ], 14 | }], 15 | }, 16 | } 17 | -------------------------------------------------------------------------------- /frontend/node_modules/gopd/.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/gopd 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 | -------------------------------------------------------------------------------- /frontend/node_modules/gopd/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var GetIntrinsic = require('get-intrinsic'); 4 | 5 | var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true); 6 | 7 | if ($gOPD) { 8 | try { 9 | $gOPD([], 'length'); 10 | } catch (e) { 11 | // IE 8 has a broken gOPD 12 | $gOPD = null; 13 | } 14 | } 15 | 16 | module.exports = $gOPD; 17 | -------------------------------------------------------------------------------- /frontend/node_modules/gopd/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var gOPD = require('../'); 5 | 6 | test('gOPD', function (t) { 7 | t.test('supported', { skip: !gOPD }, function (st) { 8 | st.equal(typeof gOPD, 'function', 'is a function'); 9 | 10 | var obj = { x: 1 }; 11 | st.ok('x' in obj, 'property exists'); 12 | 13 | var desc = gOPD(obj, 'x'); 14 | st.deepEqual( 15 | desc, 16 | { 17 | configurable: true, 18 | enumerable: true, 19 | value: 1, 20 | writable: true 21 | }, 22 | 'descriptor is as expected' 23 | ); 24 | 25 | st.end(); 26 | }); 27 | 28 | t.test('not supported', { skip: gOPD }, function (st) { 29 | st.notOk(gOPD, 'is falsy'); 30 | 31 | st.end(); 32 | }); 33 | 34 | t.end(); 35 | }); 36 | -------------------------------------------------------------------------------- /frontend/node_modules/has-property-descriptors/.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": ["GetIntrinsic"], 11 | }], 12 | }, 13 | } 14 | -------------------------------------------------------------------------------- /frontend/node_modules/has-property-descriptors/.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-property-descriptors 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 | -------------------------------------------------------------------------------- /frontend/node_modules/has-property-descriptors/.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 | -------------------------------------------------------------------------------- /frontend/node_modules/has-property-descriptors/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var $defineProperty = require('es-define-property'); 4 | 5 | var hasPropertyDescriptors = function hasPropertyDescriptors() { 6 | return !!$defineProperty; 7 | }; 8 | 9 | hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() { 10 | // node v0.6 has a bug where array lengths can be Set but not Defined 11 | if (!$defineProperty) { 12 | return null; 13 | } 14 | try { 15 | return $defineProperty([], 'length', { value: 1 }).length !== 1; 16 | } catch (e) { 17 | // In Firefox 4-22, defining length on an array throws an exception. 18 | return true; 19 | } 20 | }; 21 | 22 | module.exports = hasPropertyDescriptors; 23 | -------------------------------------------------------------------------------- /frontend/node_modules/has-proto/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /frontend/node_modules/has-proto/.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-proto 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 | -------------------------------------------------------------------------------- /frontend/node_modules/has-proto/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasProto(): boolean; 2 | 3 | export = hasProto; -------------------------------------------------------------------------------- /frontend/node_modules/has-proto/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = { 4 | __proto__: null, 5 | foo: {} 6 | }; 7 | 8 | var $Object = Object; 9 | 10 | /** @type {import('.')} */ 11 | module.exports = function hasProto() { 12 | // @ts-expect-error: TS errors on an inherited property for some reason 13 | return { __proto__: test }.foo === test.foo 14 | && !(test instanceof $Object); 15 | }; 16 | -------------------------------------------------------------------------------- /frontend/node_modules/has-proto/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var test = require('tape'); 4 | var hasProto = require('../'); 5 | 6 | test('hasProto', function (t) { 7 | var result = hasProto(); 8 | t.equal(typeof result, 'boolean', 'returns a boolean (' + result + ')'); 9 | 10 | var obj = { __proto__: null }; 11 | if (result) { 12 | t.notOk('toString' in obj, 'null object lacks toString'); 13 | } else { 14 | t.ok('toString' in obj, 'without proto, null object has toString'); 15 | t.equal(obj.__proto__, null); // eslint-disable-line no-proto 16 | } 17 | 18 | t.end(); 19 | }); 20 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/hasown/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | } 6 | -------------------------------------------------------------------------------- /frontend/node_modules/hasown/.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/hasown 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 | -------------------------------------------------------------------------------- /frontend/node_modules/hasown/.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 | -------------------------------------------------------------------------------- /frontend/node_modules/hasown/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function hasOwn(o: O, p: K): o is O & Record; 2 | 3 | export = hasOwn; 4 | -------------------------------------------------------------------------------- /frontend/node_modules/hasown/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var call = Function.prototype.call; 4 | var $hasOwn = Object.prototype.hasOwnProperty; 5 | var bind = require('function-bind'); 6 | 7 | /** @type {import('.')} */ 8 | module.exports = bind.call(call, $hasOwn); 9 | -------------------------------------------------------------------------------- /frontend/node_modules/hasown/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "exclude": [ 4 | "coverage", 5 | ], 6 | } 7 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/iconv-lite/lib/index.d.ts: -------------------------------------------------------------------------------- 1 | /*--------------------------------------------------------------------------------------------- 2 | * Copyright (c) Microsoft Corporation. All rights reserved. 3 | * Licensed under the MIT License. 4 | * REQUIREMENT: This definition is dependent on the @types/node definition. 5 | * Install with `npm install @types/node --save-dev` 6 | *--------------------------------------------------------------------------------------------*/ 7 | 8 | declare module 'iconv-lite' { 9 | export function decode(buffer: Buffer, encoding: string, options?: Options): string; 10 | 11 | export function encode(content: string, encoding: string, options?: Options): Buffer; 12 | 13 | export function encodingExists(encoding: string): boolean; 14 | 15 | export function decodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream; 16 | 17 | export function encodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream; 18 | } 19 | 20 | export interface Options { 21 | stripBOM?: boolean; 22 | addBOM?: boolean; 23 | defaultEncoding?: string; 24 | } 25 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/methods/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "methods", 3 | "description": "HTTP methods that node supports", 4 | "version": "1.1.2", 5 | "contributors": [ 6 | "Douglas Christopher Wilson ", 7 | "Jonathan Ong (http://jongleberry.com)", 8 | "TJ Holowaychuk (http://tjholowaychuk.com)" 9 | ], 10 | "license": "MIT", 11 | "repository": "jshttp/methods", 12 | "devDependencies": { 13 | "istanbul": "0.4.1", 14 | "mocha": "1.21.5" 15 | }, 16 | "files": [ 17 | "index.js", 18 | "HISTORY.md", 19 | "LICENSE" 20 | ], 21 | "engines": { 22 | "node": ">= 0.6" 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 | "browser": { 30 | "http": false 31 | }, 32 | "keywords": [ 33 | "http", 34 | "methods" 35 | ] 36 | } 37 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/mime/.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/frontend/node_modules/mime/.npmignore -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/object-inspect/package-support.json: -------------------------------------------------------------------------------- 1 | { 2 | "versions": [ 3 | { 4 | "version": "*", 5 | "target": { 6 | "node": "all" 7 | }, 8 | "response": { 9 | "type": "time-permitting" 10 | }, 11 | "backing": { 12 | "npm-funding": true, 13 | "donations": [ 14 | "https://github.com/ljharb", 15 | "https://tidelift.com/funding/github/npm/object-inspect" 16 | ] 17 | } 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/object-inspect/test/global.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | 5 | var test = require('tape'); 6 | var globalThis = require('globalthis')(); 7 | 8 | test('global object', function (t) { 9 | /* eslint-env browser */ 10 | var expected = typeof window === 'undefined' ? 'globalThis' : 'Window'; 11 | t.equal( 12 | inspect([globalThis]), 13 | '[ { [object ' + expected + '] } ]' 14 | ); 15 | 16 | t.end(); 17 | }); 18 | -------------------------------------------------------------------------------- /frontend/node_modules/object-inspect/test/has.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var inspect = require('../'); 4 | var test = require('tape'); 5 | var mockProperty = require('mock-property'); 6 | 7 | test('when Object#hasOwnProperty is deleted', function (t) { 8 | t.plan(1); 9 | var arr = [1, , 3]; // eslint-disable-line no-sparse-arrays 10 | 11 | t.teardown(mockProperty(Array.prototype, 1, { value: 2 })); // this is needed to account for "in" vs "hasOwnProperty" 12 | t.teardown(mockProperty(Object.prototype, 'hasOwnProperty', { 'delete': true })); 13 | 14 | t.equal(inspect(arr), '[ 1, , 3 ]'); 15 | }); 16 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/object-inspect/util.inspect.js: -------------------------------------------------------------------------------- 1 | module.exports = require('util').inspect; 2 | -------------------------------------------------------------------------------- /frontend/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.10", 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/pillarjs/path-to-regexp.git" 25 | }, 26 | "devDependencies": { 27 | "mocha": "^1.17.1", 28 | "istanbul": "^0.2.6" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /frontend/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 | 42 | [.nycrc] 43 | indent_style = tab 44 | 45 | [tea.yaml] 46 | indent_size = 2 47 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/send/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "id-length": "off", 8 | "new-cap": ["error", { 9 | "capIsNewExceptions": [ 10 | "GetIntrinsic" 11 | ], 12 | }], 13 | "no-extra-parens": "off", 14 | }, 15 | 16 | "overrides": [ 17 | { 18 | "files": ["test/**/*.js"], 19 | "rules": { 20 | "id-length": "off", 21 | "max-lines-per-function": "off", 22 | "multiline-comment-style": "off", 23 | "no-empty-function": "off", 24 | }, 25 | }, 26 | ], 27 | } 28 | -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/.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/set-function-name 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 | -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/.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 | -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/env.d.ts: -------------------------------------------------------------------------------- 1 | declare const env: { 2 | __proto__: null, 3 | boundFnsHaveConfigurableLengths: boolean; 4 | boundFnsHaveWritableLengths: boolean; 5 | functionsHaveConfigurableLengths: boolean; 6 | functionsHaveWritableLengths: boolean; 7 | }; 8 | 9 | export = env; -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/env.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var gOPD = require('gopd'); 4 | var bind = require('function-bind'); 5 | 6 | var unbound = gOPD && gOPD(function () {}, 'length'); 7 | // @ts-expect-error ts(2555) TS is overly strict with .call 8 | var bound = gOPD && gOPD(bind.call(function () {}), 'length'); 9 | 10 | var functionsHaveConfigurableLengths = !!(unbound && unbound.configurable); 11 | 12 | var functionsHaveWritableLengths = !!(unbound && unbound.writable); 13 | 14 | var boundFnsHaveConfigurableLengths = !!(bound && bound.configurable); 15 | 16 | var boundFnsHaveWritableLengths = !!(bound && bound.writable); 17 | 18 | /** @type {import('./env')} */ 19 | module.exports = { 20 | __proto__: null, 21 | boundFnsHaveConfigurableLengths: boundFnsHaveConfigurableLengths, 22 | boundFnsHaveWritableLengths: boundFnsHaveWritableLengths, 23 | functionsHaveConfigurableLengths: functionsHaveConfigurableLengths, 24 | functionsHaveWritableLengths: functionsHaveWritableLengths 25 | }; 26 | -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace setFunctionLength { 2 | type Func = (...args: unknown[]) => unknown; 3 | } 4 | 5 | declare function setFunctionLength(fn: T, length: number, loose?: boolean): T; 6 | 7 | export = setFunctionLength; -------------------------------------------------------------------------------- /frontend/node_modules/set-function-length/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@ljharb/tsconfig", 3 | "compilerOptions": { 4 | "target": "es2021", 5 | }, 6 | "exclude": [ 7 | "coverage", 8 | ], 9 | } 10 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/setprototypeof/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function setPrototypeOf(o: any, proto: object | null): any; 2 | export = setPrototypeOf; 3 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/side-channel/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | end_of_line = lf 6 | insert_final_newline = true 7 | indent_style = tab 8 | indent_size = 2 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /frontend/node_modules/side-channel/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "max-lines-per-function": 0, 8 | "multiline-comment-style": 1, 9 | "new-cap": [2, { "capIsNewExceptions": ["GetIntrinsic"] }], 10 | }, 11 | } 12 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/side-channel/index.d.ts: -------------------------------------------------------------------------------- 1 | declare namespace getSideChannel { 2 | type Key = unknown; 3 | type ListNode = { 4 | key: Key; 5 | next: ListNode; 6 | value: T; 7 | }; 8 | type RootNode = { 9 | key: object; 10 | next: null | ListNode; 11 | }; 12 | function listGetNode(list: RootNode, key: ListNode['key']): ListNode | void; 13 | function listGet(objects: RootNode, key: ListNode['key']): T | void; 14 | function listSet(objects: RootNode, key: ListNode['key'], value: T): void; 15 | function listHas(objects: RootNode, key: ListNode['key']): boolean; 16 | 17 | type Channel = { 18 | assert: (key: Key) => void; 19 | has: (key: Key) => boolean; 20 | get: (key: Key) => T; 21 | set: (key: Key, value: T) => void; 22 | } 23 | } 24 | 25 | declare function getSideChannel(): getSideChannel.Channel; 26 | 27 | export = getSideChannel; 28 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/node_modules/utils-merge/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "utils-merge", 3 | "version": "1.0.1", 4 | "description": "merge() utility function", 5 | "keywords": [ 6 | "util" 7 | ], 8 | "author": { 9 | "name": "Jared Hanson", 10 | "email": "jaredhanson@gmail.com", 11 | "url": "http://www.jaredhanson.net/" 12 | }, 13 | "repository": { 14 | "type": "git", 15 | "url": "git://github.com/jaredhanson/utils-merge.git" 16 | }, 17 | "bugs": { 18 | "url": "http://github.com/jaredhanson/utils-merge/issues" 19 | }, 20 | "license": "MIT", 21 | "licenses": [ 22 | { 23 | "type": "MIT", 24 | "url": "http://opensource.org/licenses/MIT" 25 | } 26 | ], 27 | "main": "./index", 28 | "dependencies": {}, 29 | "devDependencies": { 30 | "make-node": "0.3.x", 31 | "mocha": "1.x.x", 32 | "chai": "1.x.x" 33 | }, 34 | "engines": { 35 | "node": ">= 0.4.0" 36 | }, 37 | "scripts": { 38 | "test": "node_modules/.bin/mocha --reporter spec --require test/bootstrap/node test/*.test.js" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /frontend/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 | -------------------------------------------------------------------------------- /frontend/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "synthetic-network-frontend", 3 | "version": "0.0.1", 4 | "description": "Frontend for synthetic network", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "Apache-2.0", 11 | "dependencies": { 12 | "express": "^4.21.2" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /frontend/rushdummy.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | conf=$1 4 | function reload { 5 | echo "SIGHUP: reload" 6 | cat $conf 7 | } 8 | trap reload HUP 9 | while true; do sleep .1; done 10 | -------------------------------------------------------------------------------- /frontend/start.js: -------------------------------------------------------------------------------- 1 | const Frontend = require('./frontend') 2 | 3 | Frontend.startCLI(process.argv) 4 | -------------------------------------------------------------------------------- /frontend/test_assets/top_egress.profile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/frontend/test_assets/top_egress.profile -------------------------------------------------------------------------------- /frontend/test_assets/top_ingress.profile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/frontend/test_assets/top_ingress.profile -------------------------------------------------------------------------------- /run-in-vnc.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | # RUN THIS ONLY IN A CONTAINER 6 | # BE AWARE THAT YOU SHOULD NOT PUBLISH THE CONTAINER’S VNC PORT (5901) 7 | # TO THE DANGEROUS PLACE THAT IS THE INTERNET 8 | 9 | mkdir -p /opt/etc 10 | 11 | cat > /opt/etc/ratpoison.cfg < /opt/etc/xstartup.sh <"] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [dependencies] 10 | regex = "1" 11 | once_cell = "1.3.1" 12 | libc = "0.2" 13 | byteorder = "1" 14 | rand = "0.8.3" 15 | serde = { version = "1.0", features = ["derive"] } 16 | serde_json = "1.0" 17 | signal-hook = "0.3.6" 18 | -------------------------------------------------------------------------------- /rush/README.md: -------------------------------------------------------------------------------- 1 | # Rush: Snabb written in Rust 2 | 3 | Rush is [Snabb](https://github.com/snabbco/snabb/) written in Rust. 4 | 5 | **[Screencast on writing Snabb in Rust](https://mr.gy/screen/rush/)** 6 | 7 | > A note about `/vendor`... The choice to check-in dependencies is an intentional one. It is perhaps dogmatic but this repo follows a strict “vendor-everything” policy because dev ergonomics. Besides increasing the chances that things will Just Work™ for you, dear reader, it also releases us from being beholden to external package changes, updates, and breakages. 8 | -------------------------------------------------------------------------------- /rush/rust-toolchain.toml: -------------------------------------------------------------------------------- 1 | [toolchain] 2 | channel = "nightly" 3 | -------------------------------------------------------------------------------- /rush/src/ixy82599/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/rush/src/ixy82599/mod.rs -------------------------------------------------------------------------------- /rush/vendor/aho-corasick/COPYING: -------------------------------------------------------------------------------- 1 | This project is dual-licensed under the Unlicense and MIT licenses. 2 | 3 | You may use this code under the terms of either license. 4 | -------------------------------------------------------------------------------- /rush/vendor/aho-corasick/rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 79 2 | use_small_heuristics = "max" 3 | -------------------------------------------------------------------------------- /rush/vendor/byteorder/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"CHANGELOG.md":"51f0eb3b6139fc1a908d41a7b3cba7d58d684700986b3518f82e5af254c39e8e","COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"fb8b84be3b93b1aa065558cf9f8a867e1fc0f9bda8323d686ece79bbcfe50868","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","README.md":"b2dd89866b56f619661b90e8b3b7d3f741b0a8d5710e229df86843ae0881284f","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","benches/bench.rs":"80e43e07f34bc6d3ebe4f37cea79ba02cafce6cf30b737a1db65de55f2c38ca5","build.rs":"9671089eb30f52975911effd1fa0b30a0ab14473f44a315af0bafd6701dda6da","src/io.rs":"8f22d1b0e01fa4ce9c7c5cd727dbc40ca35c22d9c82fe8d324d9d83d37cdcc4a","src/lib.rs":"c43331d25d0d12e150b64137d6f180ae46a8c41124a374e4f62d2867482bd3d8"},"package":"08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"} -------------------------------------------------------------------------------- /rush/vendor/byteorder/COPYING: -------------------------------------------------------------------------------- 1 | This project is dual-licensed under the Unlicense and MIT licenses. 2 | 3 | You may use this code under the terms of either license. 4 | -------------------------------------------------------------------------------- /rush/vendor/cfg-if/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"Cargo.toml":"5b2a8f6e5256957c029cf3a8912d51438e7faa5891c5c102c312f6d4599c1f00","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"2406e83ee174e30aa67f8ab266836fa78545012b196395aff37c152321e2c713","src/lib.rs":"54b0f108b0dc48a077c52c0bcd22b64ef4de083e5e2b7d405e50ae4d78224f1b","tests/xcrate.rs":"c0734dae6e63beafcd60bf53546115a2320735b51035c9e2387fdf9301580934"},"package":"baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"} -------------------------------------------------------------------------------- /rush/vendor/cfg-if/tests/xcrate.rs: -------------------------------------------------------------------------------- 1 | cfg_if::cfg_if! { 2 | if #[cfg(foo)] { 3 | fn works() -> bool { false } 4 | } else if #[cfg(test)] { 5 | fn works() -> bool { true } 6 | } else { 7 | fn works() -> bool { false } 8 | } 9 | } 10 | 11 | #[test] 12 | fn smoke() { 13 | assert!(works()); 14 | } 15 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/benches/mod.rs: -------------------------------------------------------------------------------- 1 | #![feature(test)] 2 | extern crate test; 3 | 4 | #[bench] 5 | fn bench_64(b: &mut test::Bencher) { 6 | let mut buf = [0u8; 64]; 7 | b.iter(|| { 8 | getrandom::getrandom(&mut buf[..]).unwrap(); 9 | test::black_box(&buf); 10 | }); 11 | b.bytes = buf.len() as u64; 12 | } 13 | 14 | #[bench] 15 | fn bench_65536(b: &mut test::Bencher) { 16 | let mut buf = [0u8; 65536]; 17 | b.iter(|| { 18 | getrandom::getrandom(&mut buf[..]).unwrap(); 19 | test::black_box(&buf); 20 | }); 21 | b.bytes = buf.len() as u64; 22 | } 23 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/build.rs: -------------------------------------------------------------------------------- 1 | #![deny(warnings)] 2 | 3 | use std::env; 4 | 5 | fn main() { 6 | let target = env::var("TARGET").expect("TARGET was not set"); 7 | if target.contains("windows") { 8 | // for BCryptGenRandom 9 | println!("cargo:rustc-link-lib=bcrypt"); 10 | } else if target.contains("apple-ios") { 11 | // for SecRandomCopyBytes and kSecRandomDefault 12 | println!("cargo:rustc-link-lib=framework=Security"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/src/error_impls.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | #![cfg_attr(docsrs, doc(cfg(feature = "std")))] 9 | extern crate std; 10 | 11 | use crate::Error; 12 | use core::convert::From; 13 | use std::io; 14 | 15 | impl From for io::Error { 16 | fn from(err: Error) -> Self { 17 | match err.raw_os_error() { 18 | Some(errno) => io::Error::from_raw_os_error(errno), 19 | None => io::Error::new(io::ErrorKind::Other, err), 20 | } 21 | } 22 | } 23 | 24 | impl std::error::Error for Error {} 25 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/src/fuchsia.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | 9 | //! Implementation for Fuchsia Zircon 10 | use crate::Error; 11 | 12 | #[link(name = "zircon")] 13 | extern "C" { 14 | fn zx_cprng_draw(buffer: *mut u8, length: usize); 15 | } 16 | 17 | pub fn getrandom_inner(dest: &mut [u8]) -> Result<(), Error> { 18 | unsafe { zx_cprng_draw(dest.as_mut_ptr(), dest.len()) } 19 | Ok(()) 20 | } 21 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/src/ios.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | 9 | //! Implementation for iOS 10 | use crate::Error; 11 | use core::{ffi::c_void, ptr::null}; 12 | 13 | #[link(name = "Security", kind = "framework")] 14 | extern "C" { 15 | fn SecRandomCopyBytes(rnd: *const c_void, count: usize, bytes: *mut u8) -> i32; 16 | } 17 | 18 | pub fn getrandom_inner(dest: &mut [u8]) -> Result<(), Error> { 19 | // Apple's documentation guarantees kSecRandomDefault is a synonym for NULL. 20 | let ret = unsafe { SecRandomCopyBytes(null(), dest.len(), dest.as_mut_ptr()) }; 21 | if ret == -1 { 22 | Err(Error::IOS_SEC_RANDOM) 23 | } else { 24 | Ok(()) 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/src/openbsd.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | 9 | //! Implementation for OpenBSD 10 | use crate::{util_libc::last_os_error, Error}; 11 | 12 | pub fn getrandom_inner(dest: &mut [u8]) -> Result<(), Error> { 13 | for chunk in dest.chunks_mut(256) { 14 | let ret = unsafe { libc::getentropy(chunk.as_mut_ptr() as *mut libc::c_void, chunk.len()) }; 15 | if ret == -1 { 16 | return Err(last_os_error()); 17 | } 18 | } 19 | Ok(()) 20 | } 21 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/src/wasi.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | 9 | //! Implementation for WASI 10 | use crate::Error; 11 | use core::num::NonZeroU32; 12 | use wasi::random_get; 13 | 14 | pub fn getrandom_inner(dest: &mut [u8]) -> Result<(), Error> { 15 | unsafe { random_get(dest.as_mut_ptr(), dest.len()) }.map_err(|e: wasi::Error| { 16 | // convert wasi's Error into getrandom's NonZeroU32 error 17 | NonZeroU32::new(e.raw_error() as u32).unwrap().into() 18 | }) 19 | } 20 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/tests/normal.rs: -------------------------------------------------------------------------------- 1 | // Don't test on custom wasm32-unknown-unknown 2 | #![cfg(not(all( 3 | target_arch = "wasm32", 4 | target_os = "unknown", 5 | feature = "custom", 6 | not(feature = "js") 7 | )))] 8 | 9 | // Use the normal getrandom implementation on this architecture. 10 | use getrandom::getrandom as getrandom_impl; 11 | mod common; 12 | -------------------------------------------------------------------------------- /rush/vendor/getrandom/tests/rdrand.rs: -------------------------------------------------------------------------------- 1 | // We only test the RDRAND-based RNG source on supported architectures. 2 | #![cfg(any(target_arch = "x86_64", target_arch = "x86"))] 3 | 4 | // rdrand.rs expects to be part of the getrandom main crate, so we need these 5 | // additional imports to get rdrand.rs to compile. 6 | use getrandom::Error; 7 | #[macro_use] 8 | extern crate cfg_if; 9 | #[path = "../src/rdrand.rs"] 10 | mod rdrand; 11 | #[path = "../src/util.rs"] 12 | mod util; 13 | 14 | use rdrand::getrandom_inner as getrandom_impl; 15 | mod common; 16 | -------------------------------------------------------------------------------- /rush/vendor/itoa/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"Cargo.toml":"2bcb3ad6b578e6c8ca6fb8d702c860204628a03b7d5d007f3389bdf61062ad8d","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"5eac563c0123003363f4706f36927cf4d3b118965e35b51bc515343ce6a711ae","benches/bench.rs":"fc009678431563bfb1b51698fb5b83f5309a3cdab90dc7365800f4e32bc287be","src/lib.rs":"e393804c91616ffaac8ec3ace0711a34beaf303f6fe28fcb3f0cbb65641ff34e","src/udiv128.rs":"16c27cc61f69ca79eca3ac624d6baceaccdbf27cfa43c85c7e065c1ff1481748","tests/test.rs":"c9b124462b75078e2407e0239222edd7859c3112d65a114742dbb8c47dafc07c"},"package":"dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736"} -------------------------------------------------------------------------------- /rush/vendor/itoa/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /rush/vendor/libc/rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 79 2 | comment_width = 79 3 | error_on_line_overflow = true -------------------------------------------------------------------------------- /rush/vendor/libc/src/cloudabi/aarch64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type c_long = i64; 3 | pub type c_ulong = u64; 4 | pub type wchar_t = u32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/cloudabi/arm.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type c_long = i32; 3 | pub type c_ulong = u32; 4 | pub type wchar_t = u32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/cloudabi/x86.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type c_long = i32; 3 | pub type c_ulong = u32; 4 | pub type wchar_t = i32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/cloudabi/x86_64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type c_long = i64; 3 | pub type c_ulong = u64; 4 | pub type wchar_t = i32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/fixed_width_ints.rs: -------------------------------------------------------------------------------- 1 | //! This module contains type aliases for C's fixed-width integer types . 2 | //! 3 | //! These aliases are deprecated: use the Rust types instead. 4 | 5 | #[deprecated(since = "0.2.55", note = "Use i8 instead.")] 6 | pub type int8_t = i8; 7 | #[deprecated(since = "0.2.55", note = "Use i16 instead.")] 8 | pub type int16_t = i16; 9 | #[deprecated(since = "0.2.55", note = "Use i32 instead.")] 10 | pub type int32_t = i32; 11 | #[deprecated(since = "0.2.55", note = "Use i64 instead.")] 12 | pub type int64_t = i64; 13 | #[deprecated(since = "0.2.55", note = "Use u8 instead.")] 14 | pub type uint8_t = u8; 15 | #[deprecated(since = "0.2.55", note = "Use u16 instead.")] 16 | pub type uint16_t = u16; 17 | #[deprecated(since = "0.2.55", note = "Use u32 instead.")] 18 | pub type uint32_t = u32; 19 | #[deprecated(since = "0.2.55", note = "Use u64 instead.")] 20 | pub type uint64_t = u64; 21 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/hermit/aarch64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/hermit/x86_64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type wchar_t = i32; 3 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | #[repr(align(4))] 3 | pub struct in6_addr { 4 | pub s6_addr: [u8; 16], 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/apple/b32/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 2] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/apple/b64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 2] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/freebsdlike/dragonfly/errno.rs: -------------------------------------------------------------------------------- 1 | // DragonFlyBSD's __error function is declared with "static inline", so it must 2 | // be implemented in the libc crate, as a pointer to a static thread_local. 3 | f! { 4 | pub fn __error() -> *mut ::c_int { 5 | &mut errno 6 | } 7 | } 8 | 9 | extern "C" { 10 | #[thread_local] 11 | pub static mut errno: ::c_int; 12 | } 13 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd11/x86_64.rs: -------------------------------------------------------------------------------- 1 | #[repr(C)] 2 | #[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))] 3 | pub struct stat { 4 | pub st_dev: ::dev_t, 5 | pub st_ino: ::ino_t, 6 | pub st_mode: ::mode_t, 7 | pub st_nlink: ::nlink_t, 8 | pub st_uid: ::uid_t, 9 | pub st_gid: ::gid_t, 10 | pub st_rdev: ::dev_t, 11 | pub st_atime: ::time_t, 12 | pub st_atime_nsec: ::c_long, 13 | pub st_mtime: ::time_t, 14 | pub st_mtime_nsec: ::c_long, 15 | pub st_ctime: ::time_t, 16 | pub st_ctime_nsec: ::c_long, 17 | pub st_size: ::off_t, 18 | pub st_blocks: ::blkcnt_t, 19 | pub st_blksize: ::blksize_t, 20 | pub st_flags: ::fflags_t, 21 | pub st_gen: u32, 22 | pub st_lspare: i32, 23 | pub st_birthtime: ::time_t, 24 | pub st_birthtime_nsec: ::c_long, 25 | } 26 | 27 | impl ::Copy for ::stat {} 28 | impl ::Clone for ::stat { 29 | fn clone(&self) -> ::stat { 30 | *self 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs: -------------------------------------------------------------------------------- 1 | #[repr(C)] 2 | #[cfg_attr(feature = "extra_traits", derive(Debug, Eq, Hash, PartialEq))] 3 | pub struct stat { 4 | pub st_dev: ::dev_t, 5 | pub st_ino: ::ino_t, 6 | pub st_nlink: ::nlink_t, 7 | pub st_mode: ::mode_t, 8 | st_padding0: i16, 9 | pub st_uid: ::uid_t, 10 | pub st_gid: ::gid_t, 11 | st_padding1: i32, 12 | pub st_rdev: ::dev_t, 13 | pub st_atime: ::time_t, 14 | pub st_atime_nsec: ::c_long, 15 | pub st_mtime: ::time_t, 16 | pub st_mtime_nsec: ::c_long, 17 | pub st_ctime: ::time_t, 18 | pub st_ctime_nsec: ::c_long, 19 | pub st_birthtime: ::time_t, 20 | pub st_birthtime_nsec: ::c_long, 21 | pub st_size: ::off_t, 22 | pub st_blocks: ::blkcnt_t, 23 | pub st_blksize: ::blksize_t, 24 | pub st_flags: ::fflags_t, 25 | pub st_gen: u64, 26 | pub st_spare: [u64; 10], 27 | } 28 | 29 | impl ::Copy for ::stat {} 30 | impl ::Clone for ::stat { 31 | fn clone(&self) -> ::stat { 32 | *self 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type c_long = i64; 3 | pub type c_ulong = u64; 4 | pub type time_t = i64; 5 | pub type suseconds_t = i64; 6 | 7 | // should be pub(crate), but that requires Rust 1.18.0 8 | cfg_if! { 9 | if #[cfg(libc_const_size_of)] { 10 | #[doc(hidden)] 11 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_long>() - 1; 12 | } else { 13 | #[doc(hidden)] 14 | pub const _ALIGNBYTES: usize = 8 - 1; 15 | } 16 | } 17 | pub const MAP_32BIT: ::c_int = 0x00080000; 18 | 19 | cfg_if! { 20 | if #[cfg(libc_align)] { 21 | mod align; 22 | pub use self::align::*; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/netbsd/aarch64.rs: -------------------------------------------------------------------------------- 1 | use PT_FIRSTMACH; 2 | 3 | pub type c_long = i64; 4 | pub type c_ulong = u64; 5 | pub type c_char = u8; 6 | pub type __cpu_simple_lock_nv_t = ::c_uchar; 7 | 8 | // should be pub(crate), but that requires Rust 1.18.0 9 | cfg_if! { 10 | if #[cfg(libc_const_size_of)] { 11 | #[doc(hidden)] 12 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_int>() - 1; 13 | } else { 14 | #[doc(hidden)] 15 | pub const _ALIGNBYTES: usize = 4 - 1; 16 | } 17 | } 18 | 19 | pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 0; 20 | pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 1; 21 | pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 2; 22 | pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 3; 23 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/netbsd/arm.rs: -------------------------------------------------------------------------------- 1 | use PT_FIRSTMACH; 2 | 3 | pub type c_long = i32; 4 | pub type c_ulong = u32; 5 | pub type c_char = u8; 6 | pub type __cpu_simple_lock_nv_t = ::c_int; 7 | 8 | // should be pub(crate), but that requires Rust 1.18.0 9 | cfg_if! { 10 | if #[cfg(libc_const_size_of)] { 11 | #[doc(hidden)] 12 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_longlong>() - 1; 13 | } else { 14 | #[doc(hidden)] 15 | pub const _ALIGNBYTES: usize = 8 - 1; 16 | } 17 | } 18 | 19 | pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 1; 20 | pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 2; 21 | pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 3; 22 | pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 4; 23 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/netbsd/powerpc.rs: -------------------------------------------------------------------------------- 1 | use PT_FIRSTMACH; 2 | 3 | pub type c_long = i32; 4 | pub type c_ulong = u32; 5 | pub type c_char = u8; 6 | pub type __cpu_simple_lock_nv_t = ::c_int; 7 | 8 | // should be pub(crate), but that requires Rust 1.18.0 9 | cfg_if! { 10 | if #[cfg(libc_const_size_of)] { 11 | #[doc(hidden)] 12 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_double>() - 1; 13 | } else { 14 | #[doc(hidden)] 15 | pub const _ALIGNBYTES: usize = 8 - 1; 16 | } 17 | } 18 | 19 | pub const PT_STEP: ::c_int = PT_FIRSTMACH + 0; 20 | pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 1; 21 | pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 2; 22 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/netbsd/sparc64.rs: -------------------------------------------------------------------------------- 1 | pub type c_long = i64; 2 | pub type c_ulong = u64; 3 | pub type c_char = i8; 4 | pub type __cpu_simple_lock_nv_t = ::c_uchar; 5 | 6 | // should be pub(crate), but that requires Rust 1.18.0 7 | #[doc(hidden)] 8 | pub const _ALIGNBYTES: usize = 0xf; 9 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/netbsd/x86.rs: -------------------------------------------------------------------------------- 1 | pub type c_long = i32; 2 | pub type c_ulong = u32; 3 | pub type c_char = i8; 4 | pub type __cpu_simple_lock_nv_t = ::c_uchar; 5 | 6 | // should be pub(crate), but that requires Rust 1.18.0 7 | cfg_if! { 8 | if #[cfg(libc_const_size_of)] { 9 | #[doc(hidden)] 10 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_int>() - 1; 11 | } else { 12 | #[doc(hidden)] 13 | pub const _ALIGNBYTES: usize = 4 - 1; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/netbsd/x86_64.rs: -------------------------------------------------------------------------------- 1 | use PT_FIRSTMACH; 2 | 3 | pub type c_long = i64; 4 | pub type c_ulong = u64; 5 | pub type c_char = i8; 6 | pub type __cpu_simple_lock_nv_t = ::c_uchar; 7 | 8 | // should be pub(crate), but that requires Rust 1.18.0 9 | cfg_if! { 10 | if #[cfg(libc_const_size_of)] { 11 | #[doc(hidden)] 12 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_long>() - 1; 13 | } else { 14 | #[doc(hidden)] 15 | pub const _ALIGNBYTES: usize = 8 - 1; 16 | } 17 | } 18 | 19 | pub const PT_STEP: ::c_int = PT_FIRSTMACH + 0; 20 | pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 1; 21 | pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 2; 22 | pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 3; 23 | pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 4; 24 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/openbsd/aarch64.rs: -------------------------------------------------------------------------------- 1 | pub type c_long = i64; 2 | pub type c_ulong = u64; 3 | pub type c_char = u8; 4 | 5 | // should be pub(crate), but that requires Rust 1.18.0 6 | cfg_if! { 7 | if #[cfg(libc_const_size_of)] { 8 | #[doc(hidden)] 9 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_long>() - 1; 10 | } else { 11 | #[doc(hidden)] 12 | pub const _ALIGNBYTES: usize = 8 - 1; 13 | } 14 | } 15 | 16 | pub const _MAX_PAGE_SHIFT: u32 = 12; 17 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/openbsd/sparc64.rs: -------------------------------------------------------------------------------- 1 | pub type c_long = i64; 2 | pub type c_ulong = u64; 3 | pub type c_char = i8; 4 | 5 | #[doc(hidden)] 6 | pub const _ALIGNBYTES: usize = 0xf; 7 | 8 | pub const _MAX_PAGE_SHIFT: u32 = 13; 9 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/openbsd/x86.rs: -------------------------------------------------------------------------------- 1 | pub type c_long = i32; 2 | pub type c_ulong = u32; 3 | pub type c_char = i8; 4 | 5 | // should be pub(crate), but that requires Rust 1.18.0 6 | cfg_if! { 7 | if #[cfg(libc_const_size_of)] { 8 | #[doc(hidden)] 9 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_int>() - 1; 10 | } else { 11 | #[doc(hidden)] 12 | pub const _ALIGNBYTES: usize = 4 - 1; 13 | } 14 | } 15 | 16 | pub const _MAX_PAGE_SHIFT: u32 = 12; 17 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/bsd/netbsdlike/openbsd/x86_64.rs: -------------------------------------------------------------------------------- 1 | use PT_FIRSTMACH; 2 | 3 | pub type c_long = i64; 4 | pub type c_ulong = u64; 5 | pub type c_char = i8; 6 | 7 | // should be pub(crate), but that requires Rust 1.18.0 8 | cfg_if! { 9 | if #[cfg(libc_const_size_of)] { 10 | #[doc(hidden)] 11 | pub const _ALIGNBYTES: usize = ::mem::size_of::<::c_long>() - 1; 12 | } else { 13 | #[doc(hidden)] 14 | pub const _ALIGNBYTES: usize = 8 - 1; 15 | } 16 | } 17 | 18 | pub const _MAX_PAGE_SHIFT: u32 = 12; 19 | 20 | pub const PT_STEP: ::c_int = PT_FIRSTMACH + 0; 21 | pub const PT_GETREGS: ::c_int = PT_FIRSTMACH + 1; 22 | pub const PT_SETREGS: ::c_int = PT_FIRSTMACH + 2; 23 | pub const PT_GETFPREGS: ::c_int = PT_FIRSTMACH + 3; 24 | pub const PT_SETFPREGS: ::c_int = PT_FIRSTMACH + 4; 25 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/haiku/b32.rs: -------------------------------------------------------------------------------- 1 | pub type c_long = i32; 2 | pub type c_ulong = u32; 3 | pub type time_t = i32; 4 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/haiku/b64.rs: -------------------------------------------------------------------------------- 1 | pub type c_ulong = u64; 2 | pub type c_long = i64; 3 | pub type time_t = i64; 4 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/hermit/aarch64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/hermit/x86_64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type wchar_t = i32; 3 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/android/b32/x86/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: [f64; 2] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/android/b64/aarch64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f32; 8] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/android/b64/x86_64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | #[cfg_attr(target_pointer_width = "32", 4 | repr(align(4)))] 5 | #[cfg_attr(target_pointer_width = "64", 6 | repr(align(8)))] 7 | pub struct sem_t { 8 | #[cfg(target_pointer_width = "32")] 9 | __size: [::c_char; 16], 10 | #[cfg(target_pointer_width = "64")] 11 | __size: [::c_char; 32], 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b32/arm/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: [i64; 2] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b32/mips/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: [f32; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b32/sparc/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: [i64; 3] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b32/x86/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 6] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b64/aarch64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f32; 8] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b64/mips64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [i64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b64/sparc64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [i64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/b64/x86_64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/gnu/no_align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | pub struct sem_t { 4 | #[cfg(target_pointer_width = "32")] 5 | __size: [::c_char; 16], 6 | #[cfg(target_pointer_width = "64")] 7 | __size: [::c_char; 32], 8 | __align: [::c_long; 0], 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/musl/b32/arm/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: (i64, i64) 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/musl/b32/mips/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: [f32; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/musl/b32/x86/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(8))] 4 | pub struct max_align_t { 5 | priv_: [f64; 3] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/musl/b64/aarch64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f32; 8] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/linux_like/linux/musl/b64/x86_64/align.rs: -------------------------------------------------------------------------------- 1 | s_no_extra_traits! { 2 | #[allow(missing_debug_implementations)] 3 | #[repr(align(16))] 4 | pub struct max_align_t { 5 | priv_: [f64; 4] 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/newlib/aarch64/mod.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | 4 | pub type c_long = i64; 5 | pub type c_ulong = u64; 6 | 7 | s! { 8 | pub struct sockaddr { 9 | pub sa_len: u8, 10 | pub sa_family: ::sa_family_t, 11 | pub sa_data: [::c_char; 14], 12 | } 13 | 14 | pub struct sockaddr_in6 { 15 | pub sin6_len: u8, 16 | pub sin6_family: ::sa_family_t, 17 | pub sin6_port: ::in_port_t, 18 | pub sin6_flowinfo: u32, 19 | pub sin6_addr: ::in6_addr, 20 | pub sin6_scope_id: u32, 21 | } 22 | 23 | pub struct sockaddr_in { 24 | pub sin_len: u8, 25 | pub sin_family: ::sa_family_t, 26 | pub sin_port: ::in_port_t, 27 | pub sin_addr: ::in_addr, 28 | pub sin_zero: [::c_char; 8], 29 | } 30 | } 31 | 32 | pub const POLLOUT: ::c_short = 0x4; 33 | pub const POLLHUP: ::c_short = 0x10; 34 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/newlib/arm/mod.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | 4 | pub type c_long = i32; 5 | pub type c_ulong = u32; 6 | 7 | s! { 8 | pub struct sockaddr { 9 | pub sa_family: ::sa_family_t, 10 | pub sa_data: [::c_char; 14], 11 | } 12 | 13 | pub struct sockaddr_in6 { 14 | pub sin6_family: ::sa_family_t, 15 | pub sin6_port: ::in_port_t, 16 | pub sin6_flowinfo: u32, 17 | pub sin6_addr: ::in6_addr, 18 | pub sin6_scope_id: u32, 19 | } 20 | 21 | pub struct sockaddr_in { 22 | pub sin_family: ::sa_family_t, 23 | pub sin_port: ::in_port_t, 24 | pub sin_addr: ::in_addr, 25 | pub sin_zero: [u8; 8], 26 | } 27 | 28 | pub struct sockaddr_storage { 29 | pub ss_family: ::sa_family_t, 30 | pub __ss_padding: [u8; 26], 31 | } 32 | } 33 | 34 | pub const POLLOUT: ::c_short = 0x10; 35 | pub const POLLHUP: ::c_short = 0x4; 36 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/no_align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | pub struct in6_addr { 3 | pub s6_addr: [u8; 16], 4 | __align: [u32; 0], 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/solarish/compat.rs: -------------------------------------------------------------------------------- 1 | // Common functions that are unfortunately missing on illumos and 2 | // Solaris, but often needed by other crates. 3 | 4 | use unix::solarish::*; 5 | 6 | pub unsafe fn cfmakeraw(termios: *mut ::termios) { 7 | let mut t = *termios as ::termios; 8 | t.c_iflag &= !(IMAXBEL 9 | | IGNBRK 10 | | BRKINT 11 | | PARMRK 12 | | ISTRIP 13 | | INLCR 14 | | IGNCR 15 | | ICRNL 16 | | IXON); 17 | t.c_oflag &= !OPOST; 18 | t.c_lflag &= !(ECHO | ECHONL | ICANON | ISIG | IEXTEN); 19 | t.c_cflag &= !(CSIZE | PARENB); 20 | t.c_cflag |= CS8; 21 | } 22 | 23 | pub unsafe fn cfsetspeed( 24 | termios: *mut ::termios, 25 | speed: ::speed_t, 26 | ) -> ::c_int { 27 | // Neither of these functions on illumos or Solaris actually ever 28 | // return an error 29 | ::cfsetispeed(termios, speed); 30 | ::cfsetospeed(termios, speed); 31 | 0 32 | } 33 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/arm/align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | #[cfg_attr(target_pointer_width = "32", 4 | repr(align(4)))] 5 | #[cfg_attr(target_pointer_width = "64", 6 | repr(align(8)))] 7 | pub struct sem_t { 8 | #[cfg(target_pointer_width = "32")] 9 | __size: [::c_char; 16], 10 | #[cfg(target_pointer_width = "64")] 11 | __size: [::c_char; 32], 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/arm/no_align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | pub struct sem_t { 4 | #[cfg(target_pointer_width = "32")] 5 | __size: [::c_char; 16], 6 | #[cfg(target_pointer_width = "64")] 7 | __size: [::c_char; 32], 8 | __align: [::c_long; 0], 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/mips/mips32/align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | #[cfg_attr(target_pointer_width = "32", 4 | repr(align(4)))] 5 | #[cfg_attr(target_pointer_width = "64", 6 | repr(align(8)))] 7 | pub struct sem_t { 8 | #[cfg(target_pointer_width = "32")] 9 | __size: [::c_char; 16], 10 | #[cfg(target_pointer_width = "64")] 11 | __size: [::c_char; 32], 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/mips/mips32/no_align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | pub struct sem_t { 4 | #[cfg(target_pointer_width = "32")] 5 | __size: [::c_char; 16], 6 | #[cfg(target_pointer_width = "64")] 7 | __size: [::c_char; 32], 8 | __align: [::c_long; 0], 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/mips/mips64/align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | #[cfg_attr(target_pointer_width = "32", 4 | repr(align(4)))] 5 | #[cfg_attr(target_pointer_width = "64", 6 | repr(align(8)))] 7 | pub struct sem_t { 8 | __size: [::c_char; 32], 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/mips/mips64/no_align.rs: -------------------------------------------------------------------------------- 1 | s! { 2 | // FIXME this is actually a union 3 | pub struct sem_t { 4 | __size: [::c_char; 32], 5 | __align: [::c_long; 0], 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/unix/uclibc/x86_64/other.rs: -------------------------------------------------------------------------------- 1 | // Thestyle checker discourages the use of #[cfg], so this has to go into a 2 | // separate module 3 | pub type pthread_t = ::c_ulong; 4 | 5 | pub const PTHREAD_STACK_MIN: usize = 16384; 6 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/vxworks/aarch64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | pub type c_long = i64; 4 | pub type c_ulong = u64; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/vxworks/arm.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | pub type c_long = i32; 4 | pub type c_ulong = u32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/vxworks/powerpc.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | pub type c_long = i32; 4 | pub type c_ulong = u32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/vxworks/powerpc64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = u8; 2 | pub type wchar_t = u32; 3 | pub type c_long = i64; 4 | pub type c_ulong = u64; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/vxworks/x86.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type wchar_t = i32; 3 | pub type c_long = i32; 4 | pub type c_ulong = u32; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/vxworks/x86_64.rs: -------------------------------------------------------------------------------- 1 | pub type c_char = i8; 2 | pub type wchar_t = i32; 3 | pub type c_long = i64; 4 | pub type c_ulong = u64; 5 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/windows/gnu/align.rs: -------------------------------------------------------------------------------- 1 | cfg_if! { 2 | if #[cfg(target_pointer_width = "64")] { 3 | s_no_extra_traits! { 4 | #[allow(missing_debug_implementations)] 5 | #[repr(align(16))] 6 | pub struct max_align_t { 7 | priv_: [f64; 4] 8 | } 9 | } 10 | } else if #[cfg(target_pointer_width = "32")] { 11 | s_no_extra_traits! { 12 | #[allow(missing_debug_implementations)] 13 | #[repr(align(16))] 14 | pub struct max_align_t { 15 | priv_: [i64; 6] 16 | } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/windows/gnu/mod.rs: -------------------------------------------------------------------------------- 1 | pub const L_tmpnam: ::c_uint = 14; 2 | pub const TMP_MAX: ::c_uint = 0x7fff; 3 | 4 | // stdio file descriptor numbers 5 | pub const STDIN_FILENO: ::c_int = 0; 6 | pub const STDOUT_FILENO: ::c_int = 1; 7 | pub const STDERR_FILENO: ::c_int = 2; 8 | 9 | extern "C" { 10 | pub fn strcasecmp(s1: *const ::c_char, s2: *const ::c_char) -> ::c_int; 11 | pub fn strncasecmp( 12 | s1: *const ::c_char, 13 | s2: *const ::c_char, 14 | n: ::size_t, 15 | ) -> ::c_int; 16 | } 17 | 18 | cfg_if! { 19 | if #[cfg(libc_align)] { 20 | mod align; 21 | pub use self::align::*; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /rush/vendor/libc/src/windows/msvc.rs: -------------------------------------------------------------------------------- 1 | pub const L_tmpnam: ::c_uint = 260; 2 | pub const TMP_MAX: ::c_uint = 0x7fff_ffff; 3 | 4 | // POSIX Supplement (from errno.h) 5 | // This particular error code is only currently available in msvc toolchain 6 | pub const EOTHER: ::c_int = 131; 7 | 8 | extern "C" { 9 | #[link_name = "_stricmp"] 10 | pub fn stricmp(s1: *const ::c_char, s2: *const ::c_char) -> ::c_int; 11 | #[link_name = "_strnicmp"] 12 | pub fn strnicmp( 13 | s1: *const ::c_char, 14 | s2: *const ::c_char, 15 | n: ::size_t, 16 | ) -> ::c_int; 17 | } 18 | -------------------------------------------------------------------------------- /rush/vendor/libc/tests/const_fn.rs: -------------------------------------------------------------------------------- 1 | #![cfg(libc_const_extern_fn)] // If this does not hold, the file is empty 2 | 3 | #[cfg(target_os = "linux")] 4 | const _FOO: libc::c_uint = unsafe { libc::CMSG_SPACE(1) }; 5 | //^ if CMSG_SPACE is not const, this will fail to compile 6 | -------------------------------------------------------------------------------- /rush/vendor/memchr/COPYING: -------------------------------------------------------------------------------- 1 | This project is dual-licensed under the Unlicense and MIT licenses. 2 | 3 | You may use this code under the terms of either license. 4 | -------------------------------------------------------------------------------- /rush/vendor/memchr/rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 79 2 | use_small_heuristics = "max" 3 | -------------------------------------------------------------------------------- /rush/vendor/memchr/src/memchr/naive.rs: -------------------------------------------------------------------------------- 1 | #![allow(dead_code)] 2 | 3 | pub fn memchr(n1: u8, haystack: &[u8]) -> Option { 4 | haystack.iter().position(|&b| b == n1) 5 | } 6 | 7 | pub fn memchr2(n1: u8, n2: u8, haystack: &[u8]) -> Option { 8 | haystack.iter().position(|&b| b == n1 || b == n2) 9 | } 10 | 11 | pub fn memchr3(n1: u8, n2: u8, n3: u8, haystack: &[u8]) -> Option { 12 | haystack.iter().position(|&b| b == n1 || b == n2 || b == n3) 13 | } 14 | 15 | pub fn memrchr(n1: u8, haystack: &[u8]) -> Option { 16 | haystack.iter().rposition(|&b| b == n1) 17 | } 18 | 19 | pub fn memrchr2(n1: u8, n2: u8, haystack: &[u8]) -> Option { 20 | haystack.iter().rposition(|&b| b == n1 || b == n2) 21 | } 22 | 23 | pub fn memrchr3(n1: u8, n2: u8, n3: u8, haystack: &[u8]) -> Option { 24 | haystack.iter().rposition(|&b| b == n1 || b == n2 || b == n3) 25 | } 26 | -------------------------------------------------------------------------------- /rush/vendor/memchr/src/memmem/prefilter/x86/mod.rs: -------------------------------------------------------------------------------- 1 | // We only use AVX when we can detect at runtime whether it's available, which 2 | // requires std. 3 | #[cfg(feature = "std")] 4 | pub(crate) mod avx; 5 | pub(crate) mod sse; 6 | -------------------------------------------------------------------------------- /rush/vendor/memchr/src/memmem/x86/mod.rs: -------------------------------------------------------------------------------- 1 | pub(crate) mod avx; 2 | pub(crate) mod sse; 3 | -------------------------------------------------------------------------------- /rush/vendor/memchr/src/tests/memchr/mod.rs: -------------------------------------------------------------------------------- 1 | #[cfg(all(feature = "std", not(miri)))] 2 | mod iter; 3 | #[cfg(all(feature = "std", not(miri)))] 4 | mod memchr; 5 | mod simple; 6 | #[cfg(all(feature = "std", not(miri)))] 7 | mod testdata; 8 | -------------------------------------------------------------------------------- /rush/vendor/memchr/src/tests/mod.rs: -------------------------------------------------------------------------------- 1 | mod memchr; 2 | 3 | // For debugging, particularly in CI, print out the byte order of the current 4 | // target. 5 | #[cfg(all(feature = "std", target_endian = "little"))] 6 | #[test] 7 | fn byte_order() { 8 | eprintln!("LITTLE ENDIAN"); 9 | } 10 | 11 | #[cfg(all(feature = "std", target_endian = "big"))] 12 | #[test] 13 | fn byte_order() { 14 | eprintln!("BIG ENDIAN"); 15 | } 16 | -------------------------------------------------------------------------------- /rush/vendor/memchr/src/tests/x86_64-soft_float.json: -------------------------------------------------------------------------------- 1 | { 2 | "llvm-target": "x86_64-unknown-none", 3 | "target-endian": "little", 4 | "target-pointer-width": "64", 5 | "target-c-int-width": "32", 6 | "os": "none", 7 | "arch": "x86_64", 8 | "data-layout": "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128", 9 | "linker-flavor": "ld.lld", 10 | "linker": "rust-lld", 11 | "features": "-mmx,-sse,-sse2,-sse3,-ssse3,-sse4.1,-sse4.2,-3dnow,-3dnowa,-avx,-avx2,+soft-float", 12 | "executables": true, 13 | "disable-redzone": true, 14 | "panic-strategy": "abort" 15 | } 16 | -------------------------------------------------------------------------------- /rush/vendor/once_cell/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /rush/vendor/once_cell/examples/bench.rs: -------------------------------------------------------------------------------- 1 | use std::mem::size_of; 2 | 3 | use once_cell::sync::OnceCell; 4 | 5 | const N_THREADS: usize = 32; 6 | const N_ROUNDS: usize = 100_000_000; 7 | 8 | static CELL: OnceCell = OnceCell::new(); 9 | 10 | fn main() { 11 | let start = std::time::Instant::now(); 12 | let threads = 13 | (0..N_THREADS).map(|i| std::thread::spawn(move || thread_main(i))).collect::>(); 14 | for thread in threads { 15 | thread.join().unwrap(); 16 | } 17 | println!("{:?}", start.elapsed()); 18 | println!("size_of::>() = {:?}", size_of::>()); 19 | println!("size_of::>() = {:?}", size_of::>()); 20 | println!("size_of::>() = {:?}", size_of::>()); 21 | } 22 | 23 | fn thread_main(i: usize) { 24 | for _ in 0..N_ROUNDS { 25 | let &value = CELL.get_or_init(|| i); 26 | assert!(value < N_THREADS) 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /rush/vendor/once_cell/examples/reentrant_init_deadlocks.rs: -------------------------------------------------------------------------------- 1 | fn main() { 2 | let cell = once_cell::sync::OnceCell::::new(); 3 | cell.get_or_init(|| { 4 | cell.get_or_init(|| 1); 5 | 2 6 | }); 7 | } 8 | 9 | /// Dummy test to make it seem hang when compiled as `--test` 10 | /// See https://github.com/matklad/once_cell/issues/79 11 | #[test] 12 | fn dummy_test() { 13 | std::thread::sleep(std::time::Duration::from_secs(4)); 14 | } 15 | -------------------------------------------------------------------------------- /rush/vendor/ppv-lite86/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"Cargo.toml":"5d9b7092f252e3a6f7f50f6aeb1b873803b322cf5edbf0ae07e0a27d57df3fbf","LICENSE-APACHE":"0218327e7a480793ffdd4eb792379a9709e5c135c7ba267f709d6f6d4d70af0a","LICENSE-MIT":"4cada0bd02ea3692eee6f16400d86c6508bbd3bafb2b65fed0419f36d4f83e8f","src/generic.rs":"6f38250421846499c816c222d0b48155bfab09a9921e6c400d7b75567ab98f14","src/lib.rs":"bcf308d7037e259d6640a785556fcdb86653cb4f72f64fbfeda9899857c14479","src/soft.rs":"5cdee0e46c99a9d5078c0b3a733fe6fd1430ed0a888ef747bc2a1271265a1140","src/types.rs":"a354d2e3267c7c451a1420903314a358328346772ca964fa6c1ef7b96c983930","src/x86_64/mod.rs":"4d5a1da816f8e59bb385464f005075de889d1060e24dcee6709b321a3d6c92f7","src/x86_64/sse2.rs":"a9df3e7b3b8ffcd249a2cbed0e538042f7747dfa6ae7af0c9af364dc5a12d409"},"package":"ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857"} -------------------------------------------------------------------------------- /rush/vendor/ppv-lite86/src/lib.rs: -------------------------------------------------------------------------------- 1 | #![no_std] 2 | 3 | // Design: 4 | // - safety: safe creation of any machine type is done only by instance methods of a 5 | // Machine (which is a ZST + Copy type), which can only by created unsafely or safely 6 | // through feature detection (e.g. fn AVX2::try_get() -> Option). 7 | 8 | mod soft; 9 | mod types; 10 | pub use self::types::*; 11 | 12 | #[cfg(all(target_arch = "x86_64", not(feature = "no_simd"), not(miri)))] 13 | pub mod x86_64; 14 | #[cfg(all(target_arch = "x86_64", not(feature = "no_simd"), not(miri)))] 15 | use self::x86_64 as arch; 16 | 17 | #[cfg(any(feature = "no_simd", miri, not(target_arch = "x86_64")))] 18 | pub mod generic; 19 | #[cfg(any(feature = "no_simd", miri, not(target_arch = "x86_64")))] 20 | use self::generic as arch; 21 | 22 | pub use self::arch::{vec128_storage, vec256_storage, vec512_storage}; 23 | -------------------------------------------------------------------------------- /rush/vendor/proc-macro2/src/marker.rs: -------------------------------------------------------------------------------- 1 | use std::marker::PhantomData; 2 | use std::panic::{RefUnwindSafe, UnwindSafe}; 3 | use std::rc::Rc; 4 | 5 | // Zero sized marker with the correct set of autotrait impls we want all proc 6 | // macro types to have. 7 | pub(crate) type Marker = PhantomData; 8 | 9 | pub(crate) use self::value::*; 10 | 11 | mod value { 12 | pub(crate) use std::marker::PhantomData as Marker; 13 | } 14 | 15 | pub(crate) struct ProcMacroAutoTraits(Rc<()>); 16 | 17 | impl UnwindSafe for ProcMacroAutoTraits {} 18 | impl RefUnwindSafe for ProcMacroAutoTraits {} 19 | -------------------------------------------------------------------------------- /rush/vendor/proc-macro2/tests/features.rs: -------------------------------------------------------------------------------- 1 | #[test] 2 | #[ignore] 3 | fn make_sure_no_proc_macro() { 4 | assert!( 5 | !cfg!(feature = "proc-macro"), 6 | "still compiled with proc_macro?" 7 | ); 8 | } 9 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/compiletest.rs: -------------------------------------------------------------------------------- 1 | #[rustversion::attr(not(nightly), ignore)] 2 | #[test] 3 | fn ui() { 4 | let t = trybuild::TestCases::new(); 5 | t.compile_fail("tests/ui/*.rs"); 6 | } 7 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/does-not-have-iter-interpolated-dup.rs: -------------------------------------------------------------------------------- 1 | use quote::quote; 2 | 3 | fn main() { 4 | let nonrep = ""; 5 | 6 | // Without some protection against repetitions with no iterator somewhere 7 | // inside, this would loop infinitely. 8 | quote!(#(#nonrep #nonrep)*); 9 | } 10 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/does-not-have-iter-interpolated.rs: -------------------------------------------------------------------------------- 1 | use quote::quote; 2 | 3 | fn main() { 4 | let nonrep = ""; 5 | 6 | // Without some protection against repetitions with no iterator somewhere 7 | // inside, this would loop infinitely. 8 | quote!(#(#nonrep)*); 9 | } 10 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/does-not-have-iter-separated.rs: -------------------------------------------------------------------------------- 1 | use quote::quote; 2 | 3 | fn main() { 4 | quote!(#(a b),*); 5 | } 6 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/does-not-have-iter.rs: -------------------------------------------------------------------------------- 1 | use quote::quote; 2 | 3 | fn main() { 4 | quote!(#(a b)*); 5 | } 6 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/not-quotable.rs: -------------------------------------------------------------------------------- 1 | use quote::quote; 2 | use std::net::Ipv4Addr; 3 | 4 | fn main() { 5 | let ip = Ipv4Addr::LOCALHOST; 6 | let _ = quote! { #ip }; 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/not-repeatable.rs: -------------------------------------------------------------------------------- 1 | use quote::quote; 2 | 3 | struct Ipv4Addr; 4 | 5 | fn main() { 6 | let ip = Ipv4Addr; 7 | let _ = quote! { #(#ip)* }; 8 | } 9 | -------------------------------------------------------------------------------- /rush/vendor/quote/tests/ui/wrong-type-span.rs: -------------------------------------------------------------------------------- 1 | use quote::quote_spanned; 2 | 3 | fn main() { 4 | let span = ""; 5 | let x = 0; 6 | quote_spanned!(span=> #x); 7 | } 8 | -------------------------------------------------------------------------------- /rush/vendor/rand/COPYRIGHT: -------------------------------------------------------------------------------- 1 | Copyrights in the Rand project are retained by their contributors. No 2 | copyright assignment is required to contribute to the Rand project. 3 | 4 | For full authorship information, see the version control history. 5 | 6 | Except as otherwise noted (below and/or in individual files), Rand is 7 | licensed under the Apache License, Version 2.0 or 8 | or the MIT license 9 | or , at your option. 10 | 11 | The Rand project includes code from the Rust project 12 | published under these same licenses. 13 | -------------------------------------------------------------------------------- /rush/vendor/rand/src/rngs/adapter/mod.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | 9 | //! Wrappers / adapters forming RNGs 10 | 11 | mod read; 12 | mod reseeding; 13 | 14 | pub use self::read::{ReadError, ReadRng}; 15 | pub use self::reseeding::ReseedingRng; 16 | -------------------------------------------------------------------------------- /rush/vendor/rand_chacha/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"CHANGELOG.md":"ad5ed93d0f6e7c9adad7ce346b05ba5585275f689a1ae1aa176baab5f95266c7","COPYRIGHT":"90eb64f0279b0d9432accfa6023ff803bc4965212383697eee27a0f426d5f8d5","Cargo.toml":"1ea33201f9d2687c4a7201073efe3ddd9c7fe4ffef1307b22ccbf8e4a7537488","LICENSE-APACHE":"aaff376532ea30a0cd5330b9502ad4a4c8bf769c539c87ffe78819d188a18ebf","LICENSE-MIT":"209fbbe0ad52d9235e37badf9cadfe4dbdc87203179c0899e738b39ade42177b","README.md":"f4221f35b7086649fa77807e826af020b57eb65b19cb693482d4a7e1e4d80537","src/chacha.rs":"c48699c02df8e8fb654e9cb9feddaf432e367539da40bbfe2b8a0f4189797dee","src/guts.rs":"b378faf7648a510653cec160bd4a01dca65790e530a8a9bdebc6e5c9e1faf70a","src/lib.rs":"a27fe2bff676a764d43d604a20cf30a41dc1c5ef4053eb41129d2479f5ae83fe"},"package":"e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d"} -------------------------------------------------------------------------------- /rush/vendor/rand_chacha/COPYRIGHT: -------------------------------------------------------------------------------- 1 | Copyrights in the Rand project are retained by their contributors. No 2 | copyright assignment is required to contribute to the Rand project. 3 | 4 | For full authorship information, see the version control history. 5 | 6 | Except as otherwise noted (below and/or in individual files), Rand is 7 | licensed under the Apache License, Version 2.0 or 8 | or the MIT license 9 | or , at your option. 10 | 11 | The Rand project includes code from the Rust project 12 | published under these same licenses. 13 | -------------------------------------------------------------------------------- /rush/vendor/rand_core/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"CHANGELOG.md":"bf45fe5169dfbec63635b1fc4b6d51f3ec06fbc034ede0791c16a5878db2444f","COPYRIGHT":"90eb64f0279b0d9432accfa6023ff803bc4965212383697eee27a0f426d5f8d5","Cargo.toml":"a319b64f513a62f2250165a4f4d578d04b6af127ce067328f0a9373b0ff5a1aa","LICENSE-APACHE":"aaff376532ea30a0cd5330b9502ad4a4c8bf769c539c87ffe78819d188a18ebf","LICENSE-MIT":"209fbbe0ad52d9235e37badf9cadfe4dbdc87203179c0899e738b39ade42177b","README.md":"bb3bd3831adc9eaabbcea108ab7f02f5837e9d2f81e872ffd7d340ad466df4de","src/block.rs":"09c479be71069f757e7a03d20078d26ac6acfe922a3207359a9c6ff48ccbcc65","src/error.rs":"0b6d5a188a256fa367dfa368e7dd846b58977a957489c03902307eb78ce4c9e8","src/impls.rs":"d6a97255d92c06bdd1a54590648bbe4cfb41111ac9e761496baf6b7eb5e92f6a","src/le.rs":"f302239d09cc8d915aa8d4fe46c32c8981900cb20d42b12eef9c34e2e820bc88","src/lib.rs":"40476377ed3da9e3589f058aaf8ec27ffeb12b0b179240a31259dc7f816fce5f","src/os.rs":"47849479e19c43dd01259eb14be7b4daf8474d23567dc32a1547c10b108b7069"},"package":"34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7"} -------------------------------------------------------------------------------- /rush/vendor/rand_core/COPYRIGHT: -------------------------------------------------------------------------------- 1 | Copyrights in the Rand project are retained by their contributors. No 2 | copyright assignment is required to contribute to the Rand project. 3 | 4 | For full authorship information, see the version control history. 5 | 6 | Except as otherwise noted (below and/or in individual files), Rand is 7 | licensed under the Apache License, Version 2.0 or 8 | or the MIT license 9 | or , at your option. 10 | 11 | The Rand project includes code from the Rust project 12 | published under these same licenses. 13 | -------------------------------------------------------------------------------- /rush/vendor/rand_hc/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"CHANGELOG.md":"45d421637c0cab53e5f6f18ffdb40b53dfa7fbef7b4cfa96de3450a3c8b03702","COPYRIGHT":"90eb64f0279b0d9432accfa6023ff803bc4965212383697eee27a0f426d5f8d5","Cargo.toml":"3ce23ba486460921b9159972c0fa2f48aa7593e4afdb9257b344c413e08808db","LICENSE-APACHE":"aaff376532ea30a0cd5330b9502ad4a4c8bf769c539c87ffe78819d188a18ebf","LICENSE-MIT":"a771e4354f6b3ad4c92da1a5c9a239b6c291527db869632ecea4f20e24ca1135","README.md":"ff733a3325c745af3a4372578ef59a5d953cc5d1454139f490d73270bbc637bb","src/hc128.rs":"8e3bc13f0d1be8eba7dc7f56acf340c316d5eed81d5d0f09e4e778ff1d392141","src/lib.rs":"5bd63b49d1a0f4f8db05e910a0a376a863d028a0a6a18364e983d99eb7440c77"},"package":"3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73"} -------------------------------------------------------------------------------- /rush/vendor/rand_hc/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | All notable changes to this project will be documented in this file. 3 | 4 | The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) 5 | and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). 6 | 7 | ## [0.3.0] - 2020-12-08 8 | - Bump `rand_core` version to 0.6.0 9 | - Bump MSRV to 1.36 (#1011) 10 | - impl PartialEq+Eq for Hc128Rng and Hc128Core (#979) 11 | - Drop some unsafe code, fixing an unsound internal function (#960) 12 | 13 | ## [0.2.0] - 2019-06-12 14 | - Bump minor crate version since rand_core bump is a breaking change 15 | - Switch to Edition 2018 16 | 17 | ## [0.1.1] - 2019-06-06 - yanked 18 | - Bump `rand_core` version 19 | - Adjust usage of `#[inline]` 20 | 21 | ## [0.1.0] - 2018-10-17 22 | - Pulled out of the Rand crate 23 | -------------------------------------------------------------------------------- /rush/vendor/rand_hc/COPYRIGHT: -------------------------------------------------------------------------------- 1 | Copyrights in the Rand project are retained by their contributors. No 2 | copyright assignment is required to contribute to the Rand project. 3 | 4 | For full authorship information, see the version control history. 5 | 6 | Except as otherwise noted (below and/or in individual files), Rand is 7 | licensed under the Apache License, Version 2.0 or 8 | or the MIT license 9 | or , at your option. 10 | 11 | The Rand project includes code from the Rust project 12 | published under these same licenses. 13 | -------------------------------------------------------------------------------- /rush/vendor/rand_hc/Cargo.toml: -------------------------------------------------------------------------------- 1 | # THIS FILE IS AUTOMATICALLY GENERATED BY CARGO 2 | # 3 | # When uploading crates to the registry Cargo will automatically 4 | # "normalize" Cargo.toml files for maximal compatibility 5 | # with all versions of Cargo and also rewrite `path` dependencies 6 | # to registry (e.g., crates.io) dependencies 7 | # 8 | # If you believe there's an error in this file please file an 9 | # issue against the rust-lang/cargo repository. If you're 10 | # editing this file be aware that the upstream Cargo.toml 11 | # will likely look very different (and much more reasonable) 12 | 13 | [package] 14 | edition = "2018" 15 | name = "rand_hc" 16 | version = "0.3.0" 17 | authors = ["The Rand Project Developers"] 18 | description = "HC128 random number generator\n" 19 | homepage = "https://crates.io/crates/rand_hc" 20 | documentation = "https://rust-random.github.io/rand/rand_hc/" 21 | readme = "README.md" 22 | keywords = ["random", "rng", "hc128"] 23 | categories = ["algorithms", "no-std"] 24 | license = "MIT OR Apache-2.0" 25 | repository = "https://github.com/rust-random/rand" 26 | [dependencies.rand_core] 27 | version = "0.6.0" 28 | -------------------------------------------------------------------------------- /rush/vendor/rand_hc/src/lib.rs: -------------------------------------------------------------------------------- 1 | // Copyright 2018 Developers of the Rand project. 2 | // 3 | // Licensed under the Apache License, Version 2.0 or the MIT license 5 | // , at your 6 | // option. This file may not be copied, modified, or distributed 7 | // except according to those terms. 8 | 9 | //! The HC128 random number generator. 10 | 11 | #![doc( 12 | html_logo_url = "https://www.rust-lang.org/logos/rust-logo-128x128-blk.png", 13 | html_favicon_url = "https://www.rust-lang.org/favicon.ico", 14 | html_root_url = "https://rust-random.github.io/rand/" 15 | )] 16 | #![deny(missing_docs)] 17 | #![deny(missing_debug_implementations)] 18 | #![doc(test(attr(allow(unused_variables), deny(warnings))))] 19 | #![no_std] 20 | 21 | mod hc128; 22 | 23 | pub use hc128::{Hc128Core, Hc128Rng}; 24 | -------------------------------------------------------------------------------- /rush/vendor/regex-syntax/src/either.rs: -------------------------------------------------------------------------------- 1 | /// A simple binary sum type. 2 | /// 3 | /// This is occasionally useful in an ad hoc fashion. 4 | #[derive(Clone, Debug, Eq, PartialEq)] 5 | pub enum Either { 6 | Left(Left), 7 | Right(Right), 8 | } 9 | -------------------------------------------------------------------------------- /rush/vendor/regex-syntax/src/unicode_tables/perl_space.rs: -------------------------------------------------------------------------------- 1 | // DO NOT EDIT THIS FILE. IT WAS AUTOMATICALLY GENERATED BY: 2 | // 3 | // ucd-generate property-bool ucd-15.0.0 --chars --include whitespace 4 | // 5 | // Unicode version: 15.0.0. 6 | // 7 | // ucd-generate 0.2.14 is available on crates.io. 8 | 9 | pub const BY_NAME: &'static [(&'static str, &'static [(char, char)])] = 10 | &[("White_Space", WHITE_SPACE)]; 11 | 12 | pub const WHITE_SPACE: &'static [(char, char)] = &[ 13 | ('\t', '\r'), 14 | (' ', ' '), 15 | ('\u{85}', '\u{85}'), 16 | ('\u{a0}', '\u{a0}'), 17 | ('\u{1680}', '\u{1680}'), 18 | ('\u{2000}', '\u{200a}'), 19 | ('\u{2028}', '\u{2029}'), 20 | ('\u{202f}', '\u{202f}'), 21 | ('\u{205f}', '\u{205f}'), 22 | ('\u{3000}', '\u{3000}'), 23 | ]; 24 | -------------------------------------------------------------------------------- /rush/vendor/regex-syntax/test: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | # This is a convenience script for running a broad swath of the syntax tests. 6 | echo "===== DEFAULT FEATURES ===" 7 | cargo test 8 | 9 | features=( 10 | unicode 11 | unicode-age 12 | unicode-bool 13 | unicode-case 14 | unicode-gencat 15 | unicode-perl 16 | unicode-script 17 | unicode-segment 18 | ) 19 | for f in "${features[@]}"; do 20 | echo "===== FEATURE: $f ===" 21 | cargo test --no-default-features --features "$f" 22 | done 23 | -------------------------------------------------------------------------------- /rush/vendor/regex/examples/regexdna-output.txt: -------------------------------------------------------------------------------- 1 | agggtaaa|tttaccct 0 2 | [cgt]gggtaaa|tttaccc[acg] 3 3 | a[act]ggtaaa|tttacc[agt]t 9 4 | ag[act]gtaaa|tttac[agt]ct 8 5 | agg[act]taaa|ttta[agt]cct 10 6 | aggg[acg]aaa|ttt[cgt]ccct 3 7 | agggt[cgt]aa|tt[acg]accct 4 8 | agggta[cgt]a|t[acg]taccct 3 9 | agggtaa[cgt]|[acg]ttaccct 5 10 | 11 | 101745 12 | 100000 13 | 133640 14 | -------------------------------------------------------------------------------- /rush/vendor/regex/examples/shootout-regex-dna-replace.rs: -------------------------------------------------------------------------------- 1 | use std::io::{self, Read}; 2 | 3 | macro_rules! regex { 4 | ($re:expr) => {{ 5 | use regex::internal::ExecBuilder; 6 | ExecBuilder::new($re).build().unwrap().into_regex() 7 | }}; 8 | } 9 | 10 | fn main() { 11 | let mut seq = String::with_capacity(50 * (1 << 20)); 12 | io::stdin().read_to_string(&mut seq).unwrap(); 13 | let ilen = seq.len(); 14 | 15 | seq = regex!(">[^\n]*\n|\n").replace_all(&seq, "").into_owned(); 16 | println!("original: {}, replaced: {}", ilen, seq.len()); 17 | } 18 | -------------------------------------------------------------------------------- /rush/vendor/regex/rustfmt.toml: -------------------------------------------------------------------------------- 1 | max_width = 79 2 | use_small_heuristics = "max" 3 | -------------------------------------------------------------------------------- /rush/vendor/regex/src/find_byte.rs: -------------------------------------------------------------------------------- 1 | /// Searches for the given needle in the given haystack. 2 | /// 3 | /// If the perf-literal feature is enabled, then this uses the super optimized 4 | /// memchr crate. Otherwise, it uses the naive byte-at-a-time implementation. 5 | pub fn find_byte(needle: u8, haystack: &[u8]) -> Option { 6 | #[cfg(not(feature = "perf-literal"))] 7 | fn imp(needle: u8, haystack: &[u8]) -> Option { 8 | haystack.iter().position(|&b| b == needle) 9 | } 10 | 11 | #[cfg(feature = "perf-literal")] 12 | fn imp(needle: u8, haystack: &[u8]) -> Option { 13 | use memchr::memchr; 14 | memchr(needle, haystack) 15 | } 16 | 17 | imp(needle, haystack) 18 | } 19 | -------------------------------------------------------------------------------- /rush/vendor/regex/src/testdata/README: -------------------------------------------------------------------------------- 1 | Test data was taken from the Go distribution, which was in turn taken from the 2 | testregex test suite: 3 | 4 | http://www2.research.att.com/~astopen/testregex/testregex.html 5 | 6 | The LICENSE in this directory corresponds to the LICENSE that the data was 7 | released under. 8 | 9 | The tests themselves were modified for RE2/Go. A couple were modified further 10 | by me (Andrew Gallant) (only in repetition.dat) so that RE2/Go would pass them. 11 | (Yes, it seems like RE2/Go includes failing test cases.) This may or may not 12 | have been a bad idea, but I think being consistent with an established Regex 13 | library is worth something. 14 | 15 | Note that these files are read by 'scripts/regex-match-tests.py' and turned 16 | into Rust tests found in 'regex_macros/tests/matches.rs'. 17 | 18 | -------------------------------------------------------------------------------- /rush/vendor/regex/test: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | # This is a convenience script for running a broad swath of tests across 6 | # features. We don't test the complete space, since the complete space is quite 7 | # large. Hopefully once we migrate the test suite to better infrastructure 8 | # (like regex-automata), we'll be able to test more of the space. 9 | echo "===== DEFAULT FEATURES ===" 10 | cargo test 11 | 12 | echo "===== DOC TESTS ===" 13 | cargo test --doc 14 | 15 | features=( 16 | "std" 17 | "std unicode" 18 | "std unicode-perl" 19 | "std perf" 20 | "std perf-cache" 21 | "std perf-dfa" 22 | "std perf-inline" 23 | "std perf-literal" 24 | ) 25 | for f in "${features[@]}"; do 26 | echo "===== FEATURE: $f (default) ===" 27 | cargo test --test default --no-default-features --features "$f" 28 | echo "===== FEATURE: $f (default-bytes) ===" 29 | cargo test --test default-bytes --no-default-features --features "$f" 30 | done 31 | -------------------------------------------------------------------------------- /rush/vendor/regex/tests/flags.rs: -------------------------------------------------------------------------------- 1 | mat!(match_flag_case, "(?-u)(?i)abc", "ABC", Some((0, 3))); 2 | mat!(match_flag_weird_case, "(?-u)(?i)a(?-i)bc", "Abc", Some((0, 3))); 3 | mat!(match_flag_weird_case_not, "(?-u)(?i)a(?-i)bc", "ABC", None); 4 | mat!(match_flag_case_dotnl, "(?-u)(?is)a(?u:.)", "A\n", Some((0, 2))); 5 | mat!( 6 | match_flag_case_dotnl_toggle, 7 | "(?-u)(?is)a(?u:.)(?-is)a(?u:.)", 8 | "A\nab", 9 | Some((0, 4)) 10 | ); 11 | mat!( 12 | match_flag_case_dotnl_toggle_not, 13 | "(?-u)(?is)a(?u:.)(?-is)a(?u:.)", 14 | "A\na\n", 15 | None 16 | ); 17 | mat!( 18 | match_flag_case_dotnl_toggle_ok, 19 | "(?-u)(?is)a(?u:.)(?-is:a(?u:.))?", 20 | "A\na\n", 21 | Some((0, 2)) 22 | ); 23 | mat!( 24 | match_flag_multi, 25 | r"(?-u)(?m)(?:^\d+$\n?)+", 26 | "123\n456\n789", 27 | Some((0, 11)) 28 | ); 29 | mat!(match_flag_ungreedy, "(?U)a+", "aa", Some((0, 1))); 30 | mat!(match_flag_ungreedy_greedy, "(?U)a+?", "aa", Some((0, 2))); 31 | mat!(match_flag_ungreedy_noop, "(?U)(?-U)a+", "aa", Some((0, 2))); 32 | -------------------------------------------------------------------------------- /rush/vendor/regex/tests/misc.rs: -------------------------------------------------------------------------------- 1 | mat!(prefix_literal_match, r"^abc", r"abc", Some((0, 3))); 2 | mat!(prefix_literal_nomatch, r"^abc", r"zabc", None); 3 | mat!(one_literal_edge, r"abc", r"xxxxxab", None); 4 | matiter!(terminates, r"a$", r"a", (0, 1)); 5 | -------------------------------------------------------------------------------- /rush/vendor/regex/tests/shortest_match.rs: -------------------------------------------------------------------------------- 1 | macro_rules! shortmat { 2 | ($name:ident, $re:expr, $text:expr, $shortest_match:expr) => { 3 | #[test] 4 | fn $name() { 5 | let text = text!($text); 6 | let re = regex!($re); 7 | assert_eq!($shortest_match, re.shortest_match(text)); 8 | } 9 | }; 10 | } 11 | 12 | shortmat!(t01, r"a+", r"aa", Some(1)); 13 | // Test that the reverse suffix optimization gets it right. 14 | shortmat!(t02, r".*(?:abcd)+", r"abcdabcd", Some(4)); 15 | -------------------------------------------------------------------------------- /rush/vendor/regex/tests/suffix_reverse.rs: -------------------------------------------------------------------------------- 1 | mat!(t01, r".*abcd", r"abcd", Some((0, 4))); 2 | mat!(t02, r".*(?:abcd)+", r"abcd", Some((0, 4))); 3 | mat!(t03, r".*(?:abcd)+", r"abcdabcd", Some((0, 8))); 4 | mat!(t04, r".*(?:abcd)+", r"abcdxabcd", Some((0, 9))); 5 | mat!(t05, r".*x(?:abcd)+", r"abcdxabcd", Some((0, 9))); 6 | mat!(t06, r"[^abcd]*x(?:abcd)+", r"abcdxabcd", Some((4, 9))); 7 | -------------------------------------------------------------------------------- /rush/vendor/regex/tests/word_boundary_ascii.rs: -------------------------------------------------------------------------------- 1 | // ASCII word boundaries are completely oblivious to Unicode characters. 2 | // For Unicode word boundaries, the tests are precisely inverted. 3 | matiter!(ascii1, r"(?-u:\b)x(?-u:\b)", "áxβ", (2, 3)); 4 | matiter!(ascii2, r"(?-u:\B)x(?-u:\B)", "áxβ"); 5 | matiter!(ascii3, r"(?-u:\B)", "0\u{7EF5E}", (2, 2), (3, 3), (4, 4), (5, 5)); 6 | 7 | // We still get Unicode word boundaries by default in byte regexes. 8 | matiter!(unicode1, r"\bx\b", "áxβ"); 9 | matiter!(unicode2, r"\Bx\B", "áxβ", (2, 3)); 10 | -------------------------------------------------------------------------------- /rush/vendor/regex/tests/word_boundary_unicode.rs: -------------------------------------------------------------------------------- 1 | // Unicode word boundaries know about Unicode characters. 2 | // For ASCII word boundaries, the tests are precisely inverted. 3 | matiter!(unicode1, r"\bx\b", "áxβ"); 4 | matiter!(unicode2, r"\Bx\B", "áxβ", (2, 3)); 5 | 6 | matiter!(ascii1, r"(?-u:\b)x(?-u:\b)", "áxβ", (2, 3)); 7 | -------------------------------------------------------------------------------- /rush/vendor/ryu/src/parse.rs: -------------------------------------------------------------------------------- 1 | use core::fmt::{self, Display}; 2 | 3 | #[derive(Copy, Clone, Debug)] 4 | pub enum Error { 5 | InputTooShort, 6 | InputTooLong, 7 | MalformedInput, 8 | } 9 | 10 | impl Display for Error { 11 | fn fmt(&self, formatter: &mut fmt::Formatter) -> fmt::Result { 12 | let msg = match self { 13 | Error::InputTooShort => "input too short", 14 | Error::InputTooLong => "input too long", 15 | Error::MalformedInput => "malformed input", 16 | }; 17 | formatter.write_str(msg) 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /rush/vendor/ryu/tests/macros/mod.rs: -------------------------------------------------------------------------------- 1 | macro_rules! check { 2 | ($f:tt) => { 3 | assert_eq!(pretty($f), stringify!($f)); 4 | }; 5 | (-$f:tt) => { 6 | assert_eq!(pretty(-$f), concat!("-", stringify!($f))); 7 | }; 8 | } 9 | -------------------------------------------------------------------------------- /rush/vendor/serde/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /rush/vendor/serde/src/de/seed.rs: -------------------------------------------------------------------------------- 1 | use de::{Deserialize, DeserializeSeed, Deserializer}; 2 | 3 | /// A DeserializeSeed helper for implementing deserialize_in_place Visitors. 4 | /// 5 | /// Wraps a mutable reference and calls deserialize_in_place on it. 6 | pub struct InPlaceSeed<'a, T: 'a>(pub &'a mut T); 7 | 8 | impl<'a, 'de, T> DeserializeSeed<'de> for InPlaceSeed<'a, T> 9 | where 10 | T: Deserialize<'de>, 11 | { 12 | type Value = (); 13 | fn deserialize(self, deserializer: D) -> Result 14 | where 15 | D: Deserializer<'de>, 16 | { 17 | T::deserialize_in_place(deserializer, self.0) 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /rush/vendor/serde/src/private/size_hint.rs: -------------------------------------------------------------------------------- 1 | use lib::*; 2 | 3 | pub fn from_bounds(iter: &I) -> Option 4 | where 5 | I: Iterator, 6 | { 7 | helper(iter.size_hint()) 8 | } 9 | 10 | #[cfg(any(feature = "std", feature = "alloc"))] 11 | #[inline] 12 | pub fn cautious(hint: Option) -> usize { 13 | cmp::min(hint.unwrap_or(0), 4096) 14 | } 15 | 16 | fn helper(bounds: (usize, Option)) -> Option { 17 | match bounds { 18 | (lower, Some(upper)) if lower == upper => Some(upper), 19 | _ => None, 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /rush/vendor/serde_derive/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /rush/vendor/serde_derive/build.rs: -------------------------------------------------------------------------------- 1 | use std::env; 2 | use std::process::Command; 3 | use std::str; 4 | 5 | // The rustc-cfg strings below are *not* public API. Please let us know by 6 | // opening a GitHub issue if your build environment requires some way to enable 7 | // these cfgs other than by executing our build script. 8 | fn main() { 9 | let minor = match rustc_minor_version() { 10 | Some(minor) => minor, 11 | None => return, 12 | }; 13 | 14 | // Underscore const names stabilized in Rust 1.37: 15 | // https://blog.rust-lang.org/2019/08/15/Rust-1.37.0.html#using-unnamed-const-items-for-macros 16 | if minor >= 37 { 17 | println!("cargo:rustc-cfg=underscore_consts"); 18 | } 19 | } 20 | 21 | fn rustc_minor_version() -> Option { 22 | let rustc = env::var_os("RUSTC")?; 23 | let output = Command::new(rustc).arg("--version").output().ok()?; 24 | let version = str::from_utf8(&output.stdout).ok()?; 25 | let mut pieces = version.split('.'); 26 | if pieces.next() != Some("rustc 1") { 27 | return None; 28 | } 29 | pieces.next()?.parse().ok() 30 | } 31 | -------------------------------------------------------------------------------- /rush/vendor/serde_derive/src/internals/mod.rs: -------------------------------------------------------------------------------- 1 | pub mod ast; 2 | pub mod attr; 3 | 4 | mod ctxt; 5 | pub use self::ctxt::Ctxt; 6 | 7 | mod receiver; 8 | pub use self::receiver::replace_receiver; 9 | 10 | mod case; 11 | mod check; 12 | mod respan; 13 | mod symbol; 14 | 15 | use syn::Type; 16 | 17 | #[derive(Copy, Clone)] 18 | pub enum Derive { 19 | Serialize, 20 | Deserialize, 21 | } 22 | 23 | pub fn ungroup(mut ty: &Type) -> &Type { 24 | while let Type::Group(group) = ty { 25 | ty = &group.elem; 26 | } 27 | ty 28 | } 29 | -------------------------------------------------------------------------------- /rush/vendor/serde_derive/src/internals/respan.rs: -------------------------------------------------------------------------------- 1 | use proc_macro2::{Group, Span, TokenStream, TokenTree}; 2 | 3 | pub(crate) fn respan(stream: TokenStream, span: Span) -> TokenStream { 4 | stream 5 | .into_iter() 6 | .map(|token| respan_token(token, span)) 7 | .collect() 8 | } 9 | 10 | fn respan_token(mut token: TokenTree, span: Span) -> TokenTree { 11 | if let TokenTree::Group(g) = &mut token { 12 | *g = Group::new(g.delimiter(), respan(g.stream(), span)); 13 | } 14 | token.set_span(span); 15 | token 16 | } 17 | -------------------------------------------------------------------------------- /rush/vendor/serde_derive/src/try.rs: -------------------------------------------------------------------------------- 1 | use proc_macro2::{Punct, Spacing, TokenStream}; 2 | 3 | // None of our generated code requires the `From::from` error conversion 4 | // performed by the standard library's `try!` macro. With this simplified macro 5 | // we see a significant improvement in type checking and borrow checking time of 6 | // the generated code and a slight improvement in binary size. 7 | pub fn replacement() -> TokenStream { 8 | // Cannot pass `$expr` to `quote!` prior to Rust 1.17.0 so interpolate it. 9 | let dollar = Punct::new('$', Spacing::Alone); 10 | 11 | quote! { 12 | #[allow(unused_macros)] 13 | macro_rules! try { 14 | (#dollar __expr:expr) => { 15 | match #dollar __expr { 16 | _serde::__private::Ok(__val) => __val, 17 | _serde::__private::Err(__err) => { 18 | return _serde::__private::Err(__err); 19 | } 20 | } 21 | } 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/src/features_check/error.rs: -------------------------------------------------------------------------------- 1 | "serde_json requires that either `std` (default) or `alloc` feature is enabled" 2 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/src/features_check/mod.rs: -------------------------------------------------------------------------------- 1 | //! Shows a user-friendly compiler error on incompatible selected features. 2 | 3 | #[allow(unused_macros)] 4 | macro_rules! hide_from_rustfmt { 5 | ($mod:item) => { 6 | $mod 7 | }; 8 | } 9 | 10 | #[cfg(not(any(feature = "std", feature = "alloc")))] 11 | hide_from_rustfmt! { 12 | mod error; 13 | } 14 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/src/io/mod.rs: -------------------------------------------------------------------------------- 1 | //! A tiny, `no_std`-friendly facade around `std::io`. 2 | //! Reexports types from `std` when available; otherwise reimplements and 3 | //! provides some of the core logic. 4 | //! 5 | //! The main reason that `std::io` hasn't found itself reexported as part of 6 | //! the `core` crate is the `std::io::{Read, Write}` traits' reliance on 7 | //! `std::io::Error`, which may contain internally a heap-allocated `Box` 8 | //! and/or now relying on OS-specific `std::backtrace::Backtrace`. 9 | 10 | pub use self::imp::{Error, ErrorKind, Result, Write}; 11 | 12 | #[cfg(not(feature = "std"))] 13 | #[path = "core.rs"] 14 | mod imp; 15 | 16 | #[cfg(feature = "std")] 17 | use std::io as imp; 18 | 19 | #[cfg(feature = "std")] 20 | pub use std::io::{Bytes, Read}; 21 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/src/lexical/bignum.rs: -------------------------------------------------------------------------------- 1 | // Adapted from https://github.com/Alexhuszagh/rust-lexical. 2 | 3 | //! Big integer type definition. 4 | 5 | use super::math::*; 6 | use crate::lib::Vec; 7 | 8 | /// Storage for a big integer type. 9 | #[derive(Clone, PartialEq, Eq)] 10 | pub(crate) struct Bigint { 11 | /// Internal storage for the Bigint, in little-endian order. 12 | pub(crate) data: Vec, 13 | } 14 | 15 | impl Default for Bigint { 16 | fn default() -> Self { 17 | Bigint { 18 | data: Vec::with_capacity(20), 19 | } 20 | } 21 | } 22 | 23 | impl Math for Bigint { 24 | #[inline] 25 | fn data(&self) -> &Vec { 26 | &self.data 27 | } 28 | 29 | #[inline] 30 | fn data_mut(&mut self) -> &mut Vec { 31 | &mut self.data 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/src/lexical/digit.rs: -------------------------------------------------------------------------------- 1 | // Adapted from https://github.com/Alexhuszagh/rust-lexical. 2 | 3 | //! Helpers to convert and add digits from characters. 4 | 5 | // Convert u8 to digit. 6 | #[inline] 7 | pub(crate) fn to_digit(c: u8) -> Option { 8 | (c as char).to_digit(10) 9 | } 10 | 11 | // Add digit to mantissa. 12 | #[inline] 13 | pub(crate) fn add_digit(value: u64, digit: u32) -> Option { 14 | value.checked_mul(10)?.checked_add(digit as u64) 15 | } 16 | -------------------------------------------------------------------------------- /rush/vendor/serde_json/src/lexical/large_powers.rs: -------------------------------------------------------------------------------- 1 | // Adapted from https://github.com/Alexhuszagh/rust-lexical. 2 | 3 | //! Precalculated large powers for limbs. 4 | 5 | #[cfg(limb_width_32)] 6 | pub(crate) use super::large_powers32::*; 7 | 8 | #[cfg(limb_width_64)] 9 | pub(crate) use super::large_powers64::*; 10 | -------------------------------------------------------------------------------- /rush/vendor/signal-hook-registry/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"Cargo.toml":"f9aec61006ac2b8ed0322bbf40d429846a93cf38b2bcb47c089fbe3181aa1639","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"503558bfefe66ca15e4e3f7955b3cb0ec87fd52f29bf24b336af7bd00e946d5c","README.md":"56d8abee3efdf82aed1791a81feb60d9db987cedfa9c2e2a6b9451ac94bb88f7","src/half_lock.rs":"e8b13a84fbde003366e8d2b2dad277109aff1e7e746523468a595befd01e710b","src/lib.rs":"8fa14cdaa0280f7a4dfa388ca1e05ae7e47877cc199058d923082f3c61457490","tests/unregister_signal.rs":"5baeebbde2bd7e63ae9a1f1e476d33f0bfd368c1edcdab3677de6a62b04f5118"},"package":"16f1d0fef1604ba8f7a073c7e701f213e056707210e9020af4528e0101ce11a6"} -------------------------------------------------------------------------------- /rush/vendor/signal-hook-registry/README.md: -------------------------------------------------------------------------------- 1 | # Signal-hook-registry 2 | 3 | [![Travis Build Status](https://api.travis-ci.org/vorner/signal-hook.svg?branch=master)](https://travis-ci.org/vorner/signal-hook) 4 | 5 | This is the backend crate for the 6 | [signal-hook](https://crates.io/crates/signal-hook) crate. The general direct use of 7 | this crate is discouraged. See the 8 | [documentation](https://docs.rs/signal-hook-registry) for further details. 9 | 10 | ## License 11 | 12 | Licensed under either of 13 | 14 | * Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0) 15 | * MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT) 16 | 17 | at your option. 18 | 19 | ### Contribution 20 | 21 | Unless you explicitly state otherwise, any contribution intentionally 22 | submitted for inclusion in the work by you, as defined in the Apache-2.0 23 | license, shall be dual licensed as above, without any additional terms 24 | or conditions. 25 | -------------------------------------------------------------------------------- /rush/vendor/signal-hook/build.rs: -------------------------------------------------------------------------------- 1 | #[cfg(feature = "extended-siginfo-raw")] 2 | fn main() { 3 | cc::Build::new() 4 | .file("src/low_level/extract.c") 5 | .compile("extract"); 6 | } 7 | 8 | #[cfg(not(feature = "extended-siginfo-raw"))] 9 | fn main() {} 10 | -------------------------------------------------------------------------------- /rush/vendor/signal-hook/ci-check.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # We try to support some older versions of rustc. However, the support is 4 | # tiered a bit. Our dev-dependencies do *not* guarantee that old minimal 5 | # version. So we don't do tests on the older ones. Also, the 6 | # signal-hook-registry supports older rustc than we signal-hook. 7 | 8 | set -ex 9 | 10 | rm -f Cargo.lock 11 | cargo build --all --exclude signal-hook-async-std --exclude signal-hook-tokio 12 | 13 | if [ "$RUST_VERSION" = 1.36.0 ] ; then 14 | exit 15 | fi 16 | 17 | if [ "$OS" = "windows-latest" ] || [ "$RUST_VERSION" = 1.40.0 ]; then 18 | # The async support crates rely on the iterator module 19 | # which isn't available for windows. So exclude them 20 | # from the build. 21 | 22 | # Also, some dependencies of the runtimes don't like 1.40. 23 | EXCLUDE_FROM_BUILD="--exclude signal-hook-mio --exclude signal-hook-tokio --exclude signal-hook-async-std" 24 | else 25 | EXCLUDE_FROM_BUILD="" 26 | fi 27 | 28 | export RUSTFLAGS="-D warnings" 29 | 30 | cargo test --all --all-features $EXCLUDE_FROM_BUILD 31 | cargo test --all $EXCLUDE_FROM_BUILD 32 | -------------------------------------------------------------------------------- /rush/vendor/signal-hook/examples/print.rs: -------------------------------------------------------------------------------- 1 | use libc::c_int; 2 | use signal_hook::consts::signal::*; 3 | use signal_hook::low_level; 4 | 5 | use std::io::Error; 6 | 7 | #[cfg(feature = "extended-siginfo")] 8 | type Signals = 9 | signal_hook::iterator::SignalsInfo; 10 | 11 | #[cfg(not(feature = "extended-siginfo"))] 12 | use signal_hook::iterator::Signals; 13 | 14 | fn main() -> Result<(), Error> { 15 | const SIGNALS: &[c_int] = &[ 16 | SIGTERM, SIGQUIT, SIGINT, SIGTSTP, SIGWINCH, SIGHUP, SIGCHLD, SIGCONT, 17 | ]; 18 | let mut sigs = Signals::new(SIGNALS)?; 19 | for signal in &mut sigs { 20 | eprintln!("Received signal {:?}", signal); 21 | #[cfg(feature = "extended-siginfo")] 22 | let signal = signal.signal; 23 | // After printing it, do whatever the signal was supposed to do in the first place 24 | low_level::emulate_default_handler(signal)?; 25 | } 26 | Ok(()) 27 | } 28 | -------------------------------------------------------------------------------- /rush/vendor/signal-hook/rustfmt.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daily-co/synthetic-network/d4c5231bbe5314e4b4443b02262f71ecfdd14888/rush/vendor/signal-hook/rustfmt.toml -------------------------------------------------------------------------------- /rush/vendor/signal-hook/tests/default.rs: -------------------------------------------------------------------------------- 1 | //! Check the hack of SIG_DFL for windows. 2 | //! 3 | //! Libc doesn't export SIG_DFL on windows. It seems to be 0 on all platforms, though, but just to 4 | //! make sure, we observe it is so. We try to read the previous signal on startup and it must be 5 | //! the default. 6 | 7 | extern crate libc; 8 | 9 | use libc::{sighandler_t, signal, SIGTERM}; 10 | 11 | const SIG_DFL: sighandler_t = 0; 12 | 13 | #[test] 14 | fn sig_dfl() { 15 | unsafe { 16 | let prev = signal(SIGTERM, SIG_DFL); 17 | assert_eq!(SIG_DFL, prev); 18 | } 19 | } 20 | 21 | #[cfg(not(windows))] 22 | #[test] 23 | fn sig_dfl_static() { 24 | assert_eq!(::libc::SIG_DFL, SIG_DFL); 25 | } 26 | -------------------------------------------------------------------------------- /rush/vendor/syn/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /rush/vendor/syn/benches/file.rs: -------------------------------------------------------------------------------- 1 | // $ cargo bench --features full --bench file 2 | 3 | #![feature(rustc_private, test)] 4 | #![recursion_limit = "1024"] 5 | 6 | extern crate test; 7 | 8 | #[macro_use] 9 | #[path = "../tests/macros/mod.rs"] 10 | mod macros; 11 | 12 | #[path = "../tests/common/mod.rs"] 13 | mod common; 14 | #[path = "../tests/repo/mod.rs"] 15 | pub mod repo; 16 | 17 | use proc_macro2::TokenStream; 18 | use std::fs; 19 | use std::str::FromStr; 20 | use test::Bencher; 21 | 22 | const FILE: &str = "tests/rust/src/libcore/str/mod.rs"; 23 | 24 | #[bench] 25 | fn parse_file(b: &mut Bencher) { 26 | repo::clone_rust(); 27 | let content = fs::read_to_string(FILE).unwrap(); 28 | let tokens = TokenStream::from_str(&content).unwrap(); 29 | b.iter(|| syn::parse2::(tokens.clone())); 30 | } 31 | -------------------------------------------------------------------------------- /rush/vendor/syn/src/await.rs: -------------------------------------------------------------------------------- 1 | // See include!("await.rs") in token.rs. 2 | export_token_macro! {[await]} 3 | -------------------------------------------------------------------------------- /rush/vendor/syn/src/export.rs: -------------------------------------------------------------------------------- 1 | pub use std::clone::Clone; 2 | pub use std::cmp::{Eq, PartialEq}; 3 | pub use std::convert::From; 4 | pub use std::default::Default; 5 | pub use std::fmt::{self, Debug, Formatter}; 6 | pub use std::hash::{Hash, Hasher}; 7 | pub use std::marker::Copy; 8 | pub use std::option::Option::{None, Some}; 9 | pub use std::result::Result::{Err, Ok}; 10 | 11 | #[cfg(feature = "printing")] 12 | pub extern crate quote; 13 | 14 | pub use proc_macro2::{Span, TokenStream as TokenStream2}; 15 | 16 | pub use crate::span::IntoSpans; 17 | 18 | #[cfg(all( 19 | not(all(target_arch = "wasm32", any(target_os = "unknown", target_os = "wasi"))), 20 | feature = "proc-macro" 21 | ))] 22 | pub use proc_macro::TokenStream; 23 | 24 | #[cfg(feature = "printing")] 25 | pub use quote::{ToTokens, TokenStreamExt}; 26 | 27 | #[allow(non_camel_case_types)] 28 | pub type bool = help::Bool; 29 | #[allow(non_camel_case_types)] 30 | pub type str = help::Str; 31 | 32 | mod help { 33 | pub type Bool = bool; 34 | pub type Str = str; 35 | } 36 | 37 | pub struct private(pub(crate) ()); 38 | -------------------------------------------------------------------------------- /rush/vendor/syn/src/print.rs: -------------------------------------------------------------------------------- 1 | use proc_macro2::TokenStream; 2 | use quote::ToTokens; 3 | 4 | pub struct TokensOrDefault<'a, T: 'a>(pub &'a Option); 5 | 6 | impl<'a, T> ToTokens for TokensOrDefault<'a, T> 7 | where 8 | T: ToTokens + Default, 9 | { 10 | fn to_tokens(&self, tokens: &mut TokenStream) { 11 | match self.0 { 12 | Some(t) => t.to_tokens(tokens), 13 | None => T::default().to_tokens(tokens), 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /rush/vendor/syn/src/sealed.rs: -------------------------------------------------------------------------------- 1 | #[cfg(feature = "parsing")] 2 | pub mod lookahead { 3 | pub trait Sealed: Copy {} 4 | } 5 | -------------------------------------------------------------------------------- /rush/vendor/syn/src/verbatim.rs: -------------------------------------------------------------------------------- 1 | use crate::parse::{ParseBuffer, ParseStream}; 2 | use proc_macro2::TokenStream; 3 | use std::iter; 4 | 5 | pub fn between<'a>(begin: ParseBuffer<'a>, end: ParseStream<'a>) -> TokenStream { 6 | let end = end.cursor(); 7 | let mut cursor = begin.cursor(); 8 | let mut tokens = TokenStream::new(); 9 | while cursor != end { 10 | let (tt, next) = cursor.token_tree().unwrap(); 11 | tokens.extend(iter::once(tt)); 12 | cursor = next; 13 | } 14 | tokens 15 | } 16 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/.gitignore: -------------------------------------------------------------------------------- 1 | /*.pending-snap 2 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/common/mod.rs: -------------------------------------------------------------------------------- 1 | #![allow(dead_code)] 2 | 3 | use rayon::ThreadPoolBuilder; 4 | use std::env; 5 | 6 | pub mod eq; 7 | pub mod parse; 8 | 9 | /// Read the `ABORT_AFTER_FAILURE` environment variable, and parse it. 10 | pub fn abort_after() -> usize { 11 | match env::var("ABORT_AFTER_FAILURE") { 12 | Ok(s) => s.parse().expect("failed to parse ABORT_AFTER_FAILURE"), 13 | Err(_) => usize::max_value(), 14 | } 15 | } 16 | 17 | /// Configure Rayon threadpool. 18 | pub fn rayon_init() { 19 | let stack_size = match env::var("RUST_MIN_STACK") { 20 | Ok(s) => s.parse().expect("failed to parse RUST_MIN_STACK"), 21 | Err(_) => 20 * 1024 * 1024, 22 | }; 23 | ThreadPoolBuilder::new() 24 | .stack_size(stack_size) 25 | .build_global() 26 | .unwrap(); 27 | } 28 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/repo/progress.rs: -------------------------------------------------------------------------------- 1 | use std::io::{Read, Result}; 2 | use std::time::{Duration, Instant}; 3 | 4 | pub struct Progress { 5 | bytes: usize, 6 | tick: Instant, 7 | stream: R, 8 | } 9 | 10 | impl Progress { 11 | pub fn new(stream: R) -> Self { 12 | Progress { 13 | bytes: 0, 14 | tick: Instant::now() + Duration::from_millis(2000), 15 | stream, 16 | } 17 | } 18 | } 19 | 20 | impl Read for Progress { 21 | fn read(&mut self, buf: &mut [u8]) -> Result { 22 | let num = self.stream.read(buf)?; 23 | self.bytes += num; 24 | let now = Instant::now(); 25 | if now > self.tick { 26 | self.tick = now + Duration::from_millis(500); 27 | errorf!("downloading... {} bytes\n", self.bytes); 28 | } 29 | Ok(num) 30 | } 31 | } 32 | 33 | impl Drop for Progress { 34 | fn drop(&mut self) { 35 | errorf!("done ({} bytes)\n", self.bytes); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/test_asyncness.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | mod macros; 3 | 4 | use syn::{Expr, Item}; 5 | 6 | #[test] 7 | fn test_async_fn() { 8 | let input = "async fn process() {}"; 9 | 10 | snapshot!(input as Item, @r###" 11 | Item::Fn { 12 | vis: Inherited, 13 | sig: Signature { 14 | asyncness: Some, 15 | ident: "process", 16 | generics: Generics, 17 | output: Default, 18 | }, 19 | block: Block, 20 | } 21 | "###); 22 | } 23 | 24 | #[test] 25 | fn test_async_closure() { 26 | let input = "async || {}"; 27 | 28 | snapshot!(input as Expr, @r###" 29 | Expr::Closure { 30 | asyncness: Some, 31 | output: Default, 32 | body: Expr::Block { 33 | block: Block, 34 | }, 35 | } 36 | "###); 37 | } 38 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/test_parse_stream.rs: -------------------------------------------------------------------------------- 1 | use syn::ext::IdentExt; 2 | use syn::parse::ParseStream; 3 | use syn::{Ident, Token}; 4 | 5 | #[test] 6 | fn test_peek() { 7 | let _ = |input: ParseStream| { 8 | let _ = input.peek(Ident); 9 | let _ = input.peek(Ident::peek_any); 10 | let _ = input.peek(Token![::]); 11 | }; 12 | } 13 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/test_size.rs: -------------------------------------------------------------------------------- 1 | #![cfg(target_pointer_width = "64")] 2 | 3 | use std::mem; 4 | use syn::*; 5 | 6 | #[test] 7 | fn test_expr_size() { 8 | assert_eq!(mem::size_of::(), 280); 9 | } 10 | 11 | #[test] 12 | fn test_item_size() { 13 | assert_eq!(mem::size_of::(), 344); 14 | } 15 | 16 | #[test] 17 | fn test_type_size() { 18 | assert_eq!(mem::size_of::(), 304); 19 | } 20 | 21 | #[test] 22 | fn test_pat_size() { 23 | assert_eq!(mem::size_of::(), 144); 24 | } 25 | 26 | #[test] 27 | fn test_lit_size() { 28 | assert_eq!(mem::size_of::(), 40); 29 | } 30 | -------------------------------------------------------------------------------- /rush/vendor/syn/tests/test_token_trees.rs: -------------------------------------------------------------------------------- 1 | #[macro_use] 2 | mod macros; 3 | 4 | use proc_macro2::TokenStream; 5 | use quote::quote; 6 | use syn::Lit; 7 | 8 | #[test] 9 | fn test_struct() { 10 | let input = " 11 | #[derive(Debug, Clone)] 12 | pub struct Item { 13 | pub ident: Ident, 14 | pub attrs: Vec, 15 | } 16 | "; 17 | 18 | snapshot!(input as TokenStream, @r###" 19 | TokenStream( 20 | `# [derive (Debug , Clone)] pub struct Item { pub ident : Ident , pub attrs : Vec < Attribute >, }`, 21 | ) 22 | "###); 23 | } 24 | 25 | #[test] 26 | fn test_literal_mangling() { 27 | let code = "0_4"; 28 | let parsed: Lit = syn::parse_str(code).unwrap(); 29 | assert_eq!(code, quote!(#parsed).to_string()); 30 | } 31 | -------------------------------------------------------------------------------- /rush/vendor/unicode-xid/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"COPYRIGHT":"23860c2a7b5d96b21569afedf033469bab9fe14a1b24a35068b8641c578ce24d","Cargo.toml":"d9cc1fe4c99e12646b7b6ec6ff65f9af669e7758db91e860eeb4a4b37c9bc354","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7b63ecd5f1902af1b63729947373683c32745c16a10e8e6292e2e2dcd7e90ae0","README.md":"515d0bdb0feaef0dd3824b3fa8d96943d7e29ccbd358d9b84c47a0af806b5047","src/lib.rs":"85115f433b8074967fb50068d496d4a3acb4dcdd8fe4377b5d28a2101b07a83e","src/tables.rs":"895c4e1199b7987fbf058a4dbd2b1145fa212136d2fc75fd5ac49059192796af","src/tests.rs":"b866f890acd631e667635785c34b1723709f10a9515ca525b41de8a062c7b204","tests/exhaustive_tests.rs":"ec91e9124d61e5b3e2fbbbf37a2fd30d6c7a8fa22639d6720b416d9ebc1007c5"},"package":"f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564"} -------------------------------------------------------------------------------- /rush/vendor/unicode-xid/COPYRIGHT: -------------------------------------------------------------------------------- 1 | Licensed under the Apache License, Version 2.0 2 | or the MIT 4 | license , 5 | at your option. All files in the project carrying such 6 | notice may not be copied, modified, or distributed except 7 | according to those terms. 8 | -------------------------------------------------------------------------------- /rush/vendor/unicode-xid/README.md: -------------------------------------------------------------------------------- 1 | # unicode-xid 2 | 3 | Determine if a `char` is a valid identifier for a parser and/or lexer according to 4 | [Unicode Standard Annex #31](http://www.unicode.org/reports/tr31/) rules. 5 | 6 | [![Build Status](https://travis-ci.org/unicode-rs/unicode-xid.svg)](https://travis-ci.org/unicode-rs/unicode-xid) 7 | 8 | [Documentation](https://unicode-rs.github.io/unicode-xid/unicode_xid/index.html) 9 | 10 | ```rust 11 | extern crate unicode_xid; 12 | 13 | use unicode_xid::UnicodeXID; 14 | 15 | fn main() { 16 | let ch = 'a'; 17 | println!("Is {} a valid start of an identifier? {}", ch, UnicodeXID::is_xid_start(ch)); 18 | } 19 | ``` 20 | 21 | # features 22 | 23 | unicode-xid supports a `no_std` feature. This eliminates dependence 24 | on std, and instead uses equivalent functions from core. 25 | 26 | 27 | # changelog 28 | 29 | ## 0.2.0 30 | 31 | - Update to Unicode 12.1.0. 32 | 33 | ## 0.1.0 34 | 35 | - Initial release. 36 | -------------------------------------------------------------------------------- /rush/vendor/unicode-xid/tests/exhaustive_tests.rs: -------------------------------------------------------------------------------- 1 | extern crate unicode_xid; 2 | use unicode_xid::UnicodeXID; 3 | /// A `char` in Rust is a Unicode Scalar Value 4 | /// 5 | /// See: http://www.unicode.org/glossary/#unicode_scalar_value 6 | fn all_valid_chars() -> impl Iterator { 7 | (0u32..=0xD7FF).chain(0xE000u32..=0x10FFFF).map(|u| { 8 | core::convert::TryFrom::try_from(u) 9 | .expect("The selected range should be infallible if the docs match impl") 10 | }) 11 | } 12 | 13 | #[test] 14 | fn all_valid_chars_do_not_panic_for_is_xid_start() { 15 | for c in all_valid_chars() { 16 | let _ = UnicodeXID::is_xid_start(c); 17 | } 18 | } 19 | 20 | #[test] 21 | fn all_valid_chars_do_not_panic_for_is_xid_continue() { 22 | for c in all_valid_chars() { 23 | let _ = UnicodeXID::is_xid_continue(c); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /rush/vendor/wasi/.cargo-checksum.json: -------------------------------------------------------------------------------- 1 | {"files":{"CODE_OF_CONDUCT.md":"a13aaaf393818bd91207c618724d3fb74944ca5161201822a84af951bcf655ef","CONTRIBUTING.md":"2c908a3e263dc35dfed131c02ff907cd72fafb2c2096e4ba9b1e0cbb7a1b76df","Cargo.toml":"946b521f577983feb92abbad62bd85932fe4fe26b7a61dcaba4030d242667885","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-Apache-2.0_WITH_LLVM-exception":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","ORG_CODE_OF_CONDUCT.md":"a62b69bf86e605ee1bcbb2f0a12ba79e4cebb6983a7b6491949750aecc4f2178","README.md":"c021f687a5a61d9c308581401e7aa4454585a30c418abdd02e3a1ef71daa035f","SECURITY.md":"4d75afb09dd28eb5982e3a1f768ee398d90204669ceef3240a16b31dcf04148a","src/error.rs":"270ec14e103130ac5981997ddfa616851cb596fecd48ea7212a7a59dcb110c7f","src/lib.rs":"ce2e7ee6a6e4d5900f3835568b168afc70870d601b2bb94f1a6b9ddd2f046c3a","src/lib_generated.rs":"f92f8c522904454c5909843bc2db4c34af48ca2eae8634cc77dc51d89fa5eae2"},"package":"fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"} -------------------------------------------------------------------------------- /rush/vendor/wasi/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to wasi-core 2 | 3 | wasi-core follows the same development style as Cranelift, so checkout 4 | [Cranelift's CONTRIBUTING.md]. Of course, for wasi-core-specific issues, please 5 | use the [wasi-core issue tracker]. 6 | 7 | [Cranelift's CONTRIBUTING.md]: https://github.com/CraneStation/cranelift/blob/master/CONTRIBUTING.md 8 | [wasi-core issue tracker]: https://github.com/CraneStation/wasi-core/issues/new 9 | -------------------------------------------------------------------------------- /rush/vendor/wasi/LICENSE-MIT: -------------------------------------------------------------------------------- 1 | Permission is hereby granted, free of charge, to any 2 | person obtaining a copy of this software and associated 3 | documentation files (the "Software"), to deal in the 4 | Software without restriction, including without 5 | limitation the rights to use, copy, modify, merge, 6 | publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software 8 | is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice 12 | shall be included in all copies or substantial portions 13 | of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF 16 | ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED 17 | TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A 18 | PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT 19 | SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 20 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR 22 | IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /synth-chrome/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM syntheticnet:vnc 2 | 3 | RUN ARCH=`uname -m` ; if [ "$ARCH" = "aarch64" ] ; then \ 4 | echo "installing chromium for aarch64" ; \ 5 | apt-get --fix-broken install -y chromium ; \ 6 | ln -s /usr/bin/chromium /usr/bin/google-chrome-stable ; \ 7 | else \ 8 | echo "installing google-chrome-stable" ; \ 9 | wget -q https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb ; \ 10 | dpkg -i google-chrome-stable_current_amd64.deb || apt-get --fix-broken install -y ; \ 11 | fi 12 | 13 | ENV USE_VNC=yes 14 | 15 | ENV ENTRY="google-chrome-stable \ 16 | --no-sandbox --disable-gpu --no-first-run \ 17 | --disable-dev-shm-usage --disable-sync \ 18 | --autoplay-policy=no-user-gesture-required \ 19 | --use-fake-ui-for-media-stream --use-fake-device-for-media-stream \ 20 | --user-data-dir=/tmp/chrome --remote-debugging-port=9222 \ 21 | http://localhost" 22 | 23 | EXPOSE 5901/tcp 24 | --------------------------------------------------------------------------------