[][src]Crate dyon

Dyon - a rusty dynamically typed scripting language

Tutorial

If you want to say thanks for Dyon, or you found any of these ideas inspiring, please donate a small amount of money as a symbolic gesture to PayPal post at cutoutpro.com. Write a sentence describing why you think this is a good language and what you want to achieve. I (bvssvni, creator of Dyon) appreciate grateful and heart-warming responses!

Re-exports

pub use runtime::Runtime;
pub use ast::Lazy;

Modules

ast

Dyon Abstract Syntax Tree (AST).

embed

Traits for Dyon interop.

macros

Dyon macros.

runtime

Dyon runtime.

Macros

dyon_fn

Used to declare an embedded/external function in Rust which can be called from Dyon.

dyon_fn_pop

This macro is used by some other Dyon macros.

dyon_macro_items

This macro is used by some other Dyon macros.

dyon_obj

Used to implement embed::PopVariable and embed::PushVariable for some object.

Structs

Call

Used to call specific functions with arguments.

ClosureEnvironment

Stores closure environment.

Dfn

Stores preloaded function constraints. These are already checked.

Error

Stores Dyon errors.

FnBinOpRef

Used to store direct reference to external function.

FnReturnRef

Used to store direct reference to external function.

FnUnOpRef

Used to store direct reference to external function.

FnVoidRef

Used to store direct reference to external function that does not return anything.

Link

Stores a link structure.

Mat4

Wraps a 4D matrix for easier embedding with Dyon.

Module

Stores functions for a Dyon module.

Prelude

Stores a prelude, used to load standard intrinsics and type check new modules.

Thread

Stores a thread handle.

UnsafeRef

Prevents unsafe references from being accessed outside library.

Vec4

Wraps a 4D vector for easier embedding with Dyon.

Enums

FnExt

Refers to an external function.

FnIndex

Refers to a function.

Lt

Argument lifetime constraint.

Type

Stores a Dyon type.

Variable

Dyon variable.

Constants

TINVOTS

A common error message when there is no value on the stack.

Statics

LAZY_AND

Lazy invariant for &&.

LAZY_NO

Lazy invariant that no arguments have lazy invariants.

LAZY_OR

Lazy invariant for ||.

LAZY_UNWRAP_OR

Lazy invariant to unwrap first argument.

Functions

error

Reports and error to standard output.

load

Loads source from file.

load_meta

Loads a source from meta data. Assumes the source passes the lifetime checker.

load_str

Loads a source from string.

run

Runs a program using a source file.

run_str

Runs a program from a string.

Type Definitions

Array

Type alias for Dyon arrays.

LazyInvariant

Type alias for lazy invariants of external functions.

Object

Type alias for Dyon objects.

RustObject

Type alias for Rust objects.