[][src]Crate mtots

Modules

indexmap

IndexMap is a hash table where the iteration order of the key-value pairs is independent of the hash values of the keys.

Macros

gentry

try for generators (where '?' operator won't work)

mtry

Outside of mtots_core, you can't just impl From<..> for mtots_core::Error This macro is for conveniently converting an error of any type that already implements std::error::Error, into mtots_core::Error

rterr

Utility for constructing runtime errors

Structs

ArgSpec
ArgSpecBuilder
Args
AssignTarget
Behavior

Special configurable behavior for Table or Handle values These behaviors are special and not set with methods because they need to be run in contexts where 1. Globals is not available, and/or 2. they are not failable, and so failure would mean panic, making debugging purely from script-land fairly unpleasant

Class
ClassManager
Code
DocStr
Error
ErrorData
Expr
Frame
Function
Generator
Globals

The global state for mtots

HSet

Basically a IndexSet that has been made Ord and Hash

Handle
HandleBehaviorBuilder
HandleData
IndexMap

A hash table where the iteration order of the key-value pairs is independent of the hash values of the keys.

IndexSet

A hash set where the iteration order of the values is independent of their hash values.

LexError
Lexer
List

Wrapper around RefCell<Vec> Having a wrapper keeps the possibility open for e.g. caching hash values, or mutability locks

Map
Mark
Module
ModuleDisplay
NativeClassBuilder
NativeFunction
NativeGenerator
NativeModule
NativeModuleBuilder
NativeModuleData
RcStr

str smarat pointer that also stashes chars as needed so that char access can be constant time

Set
Source
Stash
Table

The priamry user defined object instances Essentially a class + bag of fields

VarSpec

Description of the state of variables in a given scope

Variable

Enums

AssignTargetDesc
Binop
ConstVal

Describes a parse time constant value

Encoding
ExprDesc
GlobalElement
Key
LexErrorKind
LogicalBinop
Punctuator
ResumeResult
Token
TokenKind
Unop
Value
VariableType
XRef

Kind of like Cow, but might also be a Ref (from a RefCell) Also, does not use ToOwned. This is because the main point of an XRef is not to Copy On Write, but to either hold an owned value or a reference to a value

XRefMut

Kind of like Cow, but might also be a RefMut (from a RefCell) Also, does not use ToOwned. This is because the main point of an XRefMut is not to Copy On Write, but to either hold an owned value or a reference to a value

Traits

ConvertValue

Trait to indicate that a value may be converted into a value of the given type.

Functions

add_standard_modules
annotate

Annotate a module and all functions in it with variable information

climain
compile
home
ordie

Type Definitions

Result