spiderfire
spiderfire copied to clipboard
Documentation for Internal and External API
Lack of Documentation
Spiderfire is currently lacking documentation for most of its API. It would be nice to have the structs and functions documented so that contributors can more easily understand the codebase, and users can begin creation of native modules.
Requirements
This task requires basic understanding of Rust, to understand the codebase, and intermediate understanding of Javascript, to understand the interactions with SpiderMonkey. Difficulty: Easy to Intermediate
Workspace Crates
- Ion Procedural Macros ('ion-proc`): Contains procedural macros.
- Wrappers around regular macros
- Ion (
ion
): Contains wrappers around the native JSAPI.- Wrappers around native types. (
IonObject
,IonArray
,IonDate
,IonFunction
) - Conversion and printing of native types.
- Handling runtime exceptions.
- Wrappers around native types. (
- Runtime ('runtime'): Contains functions related to runtime initialisation and operation.
- Module loader.
- Console global.
- Logging level.
- Modules ('modules'): Contains standard modules.
- Assertion (
assert
) - File System (
fs
)
- Assertion (
- CLI (
cli
): Contains the application code for the command-line interface.- Evaluation (
eval
) - REPL (
repl
) - Running modules/scripts (
run
)
- Evaluation (
How to read from stdin?