ets_frontend is a front-end tool in the ARK Runtime Subsystem. Combined with the ace-ets2bundle component, it supports converting ETS files into ARK bytecode files.
For more information, see: ARK Runtime Subsystem.
ets_frontend architecture
/arkcompiler/ets_frontend/
├── test262 # scripts for configuration and running Test262
├── testTs # system test cases
├── es2panda
├── aot # logical entry
├── binder # info binding
├── compiler # compiling logic
├── ir # Bytecode generation
├── lexer # lexical analysis
├── parser # syntax parsing, AST generation
├── scripts # script directory
├── test # test directory
├── typescript # typescript support
└── util # tool directory
├── ts2panda
├── scripts # dependency scripts
├── src # source code directory
├── templates # ruby templates
├── tests # unit test cases
├── tools # tools provided by ts2abc
└── ts2abc # ts2abc source code
ets_frontend uses the command line interaction mode and converts JS code into ARK bytecode files that can be run on an ARK runtime system. ets_frontend supports Windows, Linux, and macOS. Front-end tools, converting JS source code into ARK bytecode, can be built by specifying the --build-target
with ets_frontend_build
on Linux.
$ ./build.sh --product-name hispark_taurus_standard --build-target ets_frontend_build
convert JS to ARK bytecode via es2abc
$ cd out/hispark_taurus/clang_x64/arkcompiler/ets_frontend/
$ ./es2abc [options] file.js
If no parameter is specified for [options], an ARK binary file is generated by default.
Install node
and npm
convert JS to ARK bytecode
$ cd out/hispark_taurus/clang_x64/arkcompiler/ets_frontend/build
$ npm install
$ node --expose-gc src/index.js [options] file.js
If no parameter is specified for [options], an ARK binary file is generated by default.
For more information, please see: ARK-Runtime-Usage-Guide.