spiderfire icon indicating copy to clipboard operation
spiderfire copied to clipboard

Documentation for Internal and External API

Open Redfire75369 opened this issue 3 years ago • 1 comments

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.
  • 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)
  • CLI (cli): Contains the application code for the command-line interface.
    • Evaluation (eval)
    • REPL (repl)
    • Running modules/scripts (run)

Redfire75369 avatar Aug 10 '21 02:08 Redfire75369

How to read from stdin?

guest271314 avatar Jul 05 '23 21:07 guest271314