Expand description

jsonnet interpreter implementation


pub use error::Error;
pub use error::Result;
pub use error::ResultExt;
pub use jrsonnet_parser as parser;
pub use val::Thunk;
pub use val::Val;
pub use error::ErrorKind::*;




Context keeps information about current lexical code location
Context initializer which adds nothing.
Dummy resolver, can’t resolve/load any file
Dynamically reconfigurable evaluation settings
File resolver, can load file from both FS and library paths
Interned byte array
Interned string
Maintains stack trace and import resolution


Object fields may, or may not depend on this/super, this enum allows cheaper reuse of object-independent fields for native code Standard jsonnet fields are always unbound


During import, this trait will be called to create initial context for file. It may initialize global variables, stdlib for example.
Implements file resolution logic for import and importStr
Thunk without bound super/this object inheritance may be overriden multiple times, and will be fixed only on field read