Metadata-Version: 2.2
Name: gs2compiler
Version: 1.1.4
Summary: GS2 Script Compiler - Compiles Graal Script 2 to bytecode
Keywords: graal,gs2,compiler,bytecode,graalonline
Author: xtjoeytx
License: MIT
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: C++
Project-URL: Homepage, https://github.com/xtjoeytx/gs2-parser
Project-URL: Repository, https://github.com/xtjoeytx/gs2-parser
Project-URL: Issues, https://github.com/xtjoeytx/gs2-parser/issues
Requires-Python: >=3.8
Description-Content-Type: text/markdown

# gs2-parser

This is a compiler for the Graal Script 2 (GS2) language.

# Prerequisites

Before building, clone the repository and recursively clone the submodules:

```sh
git clone git@github.com:xtjoeytx/gs2-parser.git --recursive
```

# Building

You can build the project using CMake:

```sh
mkdir build
cd build
cmake ..
make -j $(nproc)
```

# Building (Wasm)

First, ensure you have Emscripten installed. Then, you can build the project using CMake:

```sh
mkdir build
cd build
emcmake cmake ..
make -j $(nproc)
```

The resulting `gs2test.js` file can be imported into a webpage.

# Running

The non-wasm build can be run using the following command:

```sh
$ ./gs2test ../scripts/asd2.txt
Argc: 2
Args: ../scripts/asd2.txt
Compiling file ../scripts/asd2.txt
Compiled in 0.001322 seconds
 -> saved to ../scripts/asd2.gs2bc
Total length of bytecode w/ headers:   160
```