Skip to content

openharmony/ark_ts2abc

Repository files navigation

ts2abc

Introduction

ts2abc is a front-end tool in the ARK Runtime Subsystem. It converts JavaScript(JS) files into ARK bytecode files.

For more information, see: ARK Runtime Subsystem.

Directory Structure

/ark/ts2abc/
├── test262            # scripts for configuration and running Test262
├── testTs             # system test cases
├── ts2panda
    ├── scripts        # dependency scripts
    ├── src            # source code directory
    ├── templates      # ruby templates
    ├── tests          # unit test cases
    ├── tools          # tools provided by ts2abc
    └── ts2abc         # ts2abc source code

Build

ts2abc uses the command line interaction mode and converts JS code into ARK bytecode files that can be run on an ARK runtime system. ts2abc supports Windows, Linux, and macOS. Front-end tools, converting JS source code into ARK bytecode, can be built by specifying the --build-target with ark_ts2abc on Linux.

$ ./build.sh --product-name hispark_taurus_standard --build-target ark_ts2abc_build

Usage Guidelines

Install node and npm

convert JS to ARK bytecode

$ cd out/hispark_taurus/clang_x64/ark/ark/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.

Option

Abbreviation

Description

Value Range

Default Value

--commonjs

-c

Compiles the code based on the commonjs.

-

-

--modules

-m

Compiles the code based on the ecmascript standard module.

-

-

--debug-log

-l

Enables the log function.

-

-

--dump-assembly

-a

Outputs an assembly file.

-

-

--debug

-d

Provides debug information.

-

-

--show-statistics

-s

Displays statistics about bytecodes.

-

-

--output

-o

Specifies the path of the output file.

-

-

--timeout

-t

Specifies the timeout threshold.

-

-

--opt-log-level

-

Specifies the log level for compilation optimization.

['debug', 'info', 'error', 'fatal']

error

--opt-level

-

Specifies the level for compilation optimization.

-

1

--help

-h

Displays help information.

-

-

--bc-version

-v

Outputs the current bytecode version.

-

-

--bc-min-version

-

Outputs the lowest bytecode version supported.

-

-

--included-files

-i

The list of dependent files

-

-

--record-type

-p

Record type info

-

true

--dts-type-record

-q

Record type info for .d.ts files

-

false

--debug-type

-g

Print type-related log

-

false

--output-type

-

Set output type

-

false

For more information, please see: ARK-Runtime-Usage-Guide.

Repositories Involved

ark_runtime_core

ark_js_runtime

ark_ts2abc

About

ts2abc组件是方舟平台的一个组件,其作为方舟编译器中JavaScript语言的前端工具,支持将JavaScript文件转换为方舟字节码文件

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors