Skip to main content

Module applesoft

Module applesoft 

Source
Expand description

§Applesoft analysis and transformations

This module is used by both the CLI and the language server. The Applesoft parser is provided by tree_sitter_applesoft. The server compiles to a separate executable, its entry point is in src/bin/server-applesoft/main.rs.

Modules§

checkpoint
Applesoft checkpoint module.
completions
diagnostics
Applesoft diagnostics module.
hovers
minifier
Module containing the Applesoft minifier
renumber
Applesoft Renumber Module
semantic_tokens
settings
Parse settings string sent by any client.
tokenizer
Module containing the Applesoft tokenizer

Structs§

Line
Information about a specific line label. The label itself is a key that maps to this information.
Symbols
Main structure containing the symbol information for one source file
Variable
Information about a specific variable or function in one source file. The name itself is a key that maps to this information. The key is always put in uppercase, but all case variations that occur are saved.
Workspace
The Applesoft workspace is a chain structure. One program could chain to any other program. Chaining does not persist function definitions.

Functions§

bytes_to_escaped_string
Calls bytes_to_escaped_string_ex with escapes set to [10,13]
bytes_to_escaped_string_ex
Starting in some stringlike context defined by ctx, where the trigger byte has already been consumed, escape the remaining bytes within that context. If there is a literal hex escape it is put as \x5CxHH where H is the hex. Return the escaped string and the index to the terminator. The terminator is not part of the returned string.
deduce_address
name_range
Extract range of the variable name within the node @param node node can be either var_* or name_* @returns range of name part of variable, includes $ or % but not subscript
var_to_key
Extract variable name from syntax node @param node syntax node to be analyzed, can be var_* or name_*, except for name_amp @param recall is this an implicit array like the argument of RECALL @returns [normalized name,specific name], includes $, %, or ()