Struct tera::Context[][src]

pub struct Context<S: ContextSafety> { /* fields omitted */ }
Expand description

The struct that holds the context of a template rendering.

Light wrapper around a BTreeMap for easier insertions of Serializable values

ContextSafety will be defined at creation time as either CtxThreadSafe or CtxThreadLocal, deciding what values Context-local functions may capture.

Implementations

Initializes an empty context that is Send and Sync and can have functions capturing only Send and Sync values.

Takes a serde-json Value and convert it into a Context with no overhead/cloning.

Takes something that impl Serialize and create a context with it. Meant to be used if you have a hashmap or a struct and don’t want to insert values one by one in the context.

Registers Context-local function

Initializes an empty context that is neither Send nor Sync but can have functions capturing non-Send and non-Sync values.

Registers Context-local function

Converts the val parameter to Value and insert it into the context.

Panics if the serialization fails.

let mut context = tera::Context::new();
context.insert("number_users", &42);

Converts the val parameter to Value and insert it into the context.

Returns an error if the serialization fails.

let mut context = Context::new();
// user is an instance of a struct implementing `Serialize`
if let Err(_) = context.try_insert("number_users", &user) {
    // Serialization failed
}

Appends the data of the source parameter to self, overwriting existing keys. The source context will be dropped.

let mut target = Context::new();
target.insert("a", &1);
target.insert("b", &2);
let mut source = Context::new();
source.insert("b", &3);
source.insert("d", &4);
target.extend(source);

Converts the context to a serde_json::Value consuming the context.

Returns the value at a given key index.

Remove a key from the context, returning the value at the key if the key was previously inserted into the context.

Checks if a value exists at a specific index.

Looks up Context-local registered function

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.