Flecs: ecs_expr_eval_desc_t Struct Reference
Description: A fast entity component system (ECS) for C & C++

| Flecs v4.1 A fast entity component system (ECS) for C & C++

Loading...
Searching...
No Matches
ecs_expr_eval_desc_t Struct Reference
C API » Addons » Flecs script

Used with ecs_expr_run(). More...

`#include <script.h>`

## Public Attributes
const char * | name
| Script name.
const char * | expr
| Full expression string.
const ecs_script_vars_t * | vars
| Variables accessible in expression.
ecs_entity_t | type
| Type of parsed value (optional).
ecs_entity_t(* | lookup_action )(const ecs_world_t *, const char *value, void *ctx)
void * | lookup_ctx
| Context passed to lookup function.
bool | disable_folding
| Disable constant folding (slower evaluation, faster parsing).
bool | disable_dynamic_variable_binding
| This option instructs the expression runtime to lookup variables by stack pointer instead of by name, which improves performance.
bool | allow_unresolved_identifiers
| Allow for unresolved identifiers when parsing.
ecs_script_runtime_t * | runtime
| Reusable runtime (optional).
void * | script_visitor
| For internal usage.
bool(* | unresolved_identifier_action )(const ecs_world_t *, const char *value, void *ctx)

## Detailed Description

Used with ecs_expr_run().

Definition at line 585 of file script.h.

## Member Data Documentation

## ◆ allow_unresolved_identifiers

bool ecs_expr_eval_desc_t::allow_unresolved_identifiers

Allow for unresolved identifiers when parsing.

Useful when entities can be created in between parsing and evaluating.

Definition at line 606 of file script.h.

## ◆ disable_dynamic_variable_binding

bool ecs_expr_eval_desc_t::disable_dynamic_variable_binding

This option instructs the expression runtime to lookup variables by stack pointer instead of by name, which improves performance.

Only enable when provided variables are always declared in the same order.

Definition at line 602 of file script.h.

## ◆ disable_folding

bool ecs_expr_eval_desc_t::disable_folding

Disable constant folding (slower evaluation, faster parsing).

Definition at line 597 of file script.h.

## ◆ expr

const char* ecs_expr_eval_desc_t::expr

Full expression string.

Definition at line 587 of file script.h.

## ◆ lookup_action

ecs_entity_t(* ecs_expr_eval_desc_t::lookup_action) ( const ecs_world_t *, const char *value, void *ctx)

Definition at line 590 of file script.h.

## ◆ lookup_ctx

void* ecs_expr_eval_desc_t::lookup_ctx

Context passed to lookup function.

Definition at line 594 of file script.h.

## ◆ name

const char* ecs_expr_eval_desc_t::name

Script name.

Definition at line 586 of file script.h.

## ◆ runtime

ecs_script_runtime_t* ecs_expr_eval_desc_t::runtime

Reusable runtime (optional).

Definition at line 608 of file script.h.

## ◆ script_visitor

void* ecs_expr_eval_desc_t::script_visitor

For internal usage.

Definition at line 610 of file script.h.

## ◆ type

ecs_entity_t ecs_expr_eval_desc_t::type

Type of parsed value (optional).

Definition at line 589 of file script.h.

## ◆ unresolved_identifier_action

bool(* ecs_expr_eval_desc_t::unresolved_identifier_action) ( const ecs_world_t *, const char *value, void *ctx)

Definition at line 612 of file script.h.

## ◆ vars

const ecs_script_vars_t* ecs_expr_eval_desc_t::vars

Variables accessible in expression.

Definition at line 588 of file script.h.

The documentation for this struct was generated from the following file:

- include/flecs/addons/script.h