Skip to content
Flecs v4.1

Data definition format for loading entity data. More...

Classes

struct  flecs::script_builder
 Script builder interface. More...
struct  flecs::parsed_script

Typedefs

using flecs::Script = EcsScript

Functions

int script_run (const char *name, const char *str) const
 Run a script.
int script_run_file (const char *filename) const
 Run a script from a file.
script_builder script (const char *name=nullptr) const
 Build a script.
parsed_script script_parse (const char *name, const char *code, const ecs_script_eval_desc_t *desc=nullptr, ecs_script_eval_result_t *result=nullptr) const
int script_update (flecs::entity_t script, const char *code, flecs::entity_t instance=0) const
function_builder function (const char *name) const
function_builder method (flecs::entity_t type, const char *name) const
template<typename T>
function_builder method (const char *name) const
template<typename T>
flecs::entity const_var (const char *name, const T &value, flecs::entity_t parent=0) const
template<typename T>
flecs::entity mut_var (const char *name, const T &value, flecs::entity_t parent=0) const
template<typename T>
int set_mut_var (const char *name, const T &value) const
flecs::string to_expr (flecs::entity_t tid, const void *value)
 Convert a value to a string.
template<typename T>
flecs::string to_expr (const T *value)
 Convert a value to a string.
template<typename T>
get_const_var (const char *name, const T &default_value={}) const
 Get the value of an exported script variable.
template<typename T>
void get_const_var (const char *name, T &out, const T &default_value={}) const
 Get the value of an exported script variable.
template<typename T>
get_mut_var (const char *name, const T &default_value={}) const
 Get the value of an exported script mut variable.
template<typename T>
void get_mut_var (const char *name, T &out, const T &default_value={}) const
 Get the value of an exported script mut variable.
int flecs::world::script_run (const char *name, const char *str) const
 Run a script.
int flecs::world::script_run_file (const char *filename) const
 Run a script from a file.
script_builder flecs::world::script (const char *name=nullptr) const
 Build a script.
parsed_script flecs::world::script_parse (const char *name, const char *code, const ecs_script_eval_desc_t *desc=nullptr, ecs_script_eval_result_t *result=nullptr) const
int flecs::world::script_update (flecs::entity_t script, const char *code, flecs::entity_t instance=0) const
function_builder flecs::world::function (const char *name) const
function_builder flecs::world::method (flecs::entity_t type, const char *name) const
template<typename T>
function_builder flecs::world::method (const char *name) const
template<typename T>
flecs::entity flecs::world::const_var (const char *name, const T &value, flecs::entity_t parent=0) const
template<typename T>
flecs::entity flecs::world::mut_var (const char *name, const T &value, flecs::entity_t parent=0) const
template<typename T>
int flecs::world::set_mut_var (const char *name, const T &value) const
flecs::string flecs::world::to_expr (flecs::entity_t tid, const void *value)
 Convert a value to a string.
template<typename T>
flecs::string flecs::world::to_expr (const T *value)
 Convert a value to a string.
template<typename T>
flecs::world::get_const_var (const char *name, const T &default_value={}) const
 Get the value of an exported script variable.
template<typename T>
void flecs::world::get_const_var (const char *name, T &out, const T &default_value={}) const
 Get the value of an exported script variable.
template<typename T>
flecs::world::get_mut_var (const char *name, const T &default_value={}) const
 Get the value of an exported script mut variable.
template<typename T>
void flecs::world::get_mut_var (const char *name, T &out, const T &default_value={}) const
 Get the value of an exported script mut variable.

Detailed Description

Data definition format for loading entity data.

Typedef Documentation

◆ Script

using flecs::Script = EcsScript

Definition at line 21 of file decl.hpp.

Function Documentation

◆ const_var()

template<typename T>
flecs::entity flecs::world::const_var ( const char * name,
const T & value,
flecs::entity_t parent = 0 ) const
inline

Definition at line 26 of file impl.hpp.

◆ function() [1/2]

function_builder flecs::world::function ( const char * name) const
inline

Definition at line 49 of file world.hpp.

◆ function() [2/2]

function_builder function ( const char * name) const

Definition at line 48 of file mixin.inl.

◆ get_const_var() [1/4]

template<typename T>
T flecs::world::get_const_var ( const char * name,
const T & default_value = {} ) const
inline

Get the value of an exported script variable.

This operation will panic if no const var with the provided name was found, or if the type of the variable cannot be converted to the provided type.

An exported variable can be created in a script like this:

export const x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
default_valueOptional default value. Returned when const var lookup failed.
Returns
The value of the variable.

Definition at line 155 of file impl.hpp.

◆ get_const_var() [2/4]

template<typename T>
void flecs::world::get_const_var ( const char * name,
T & out,
const T & default_value = {} ) const

Get the value of an exported script variable.

This operation will panic if no const var with the provided name was found, or if the type of the variable cannot be converted to the provided type.

An exported variable can be created in a script like this:

export const x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
outOptional pointer to out variable. Can be used to automatically deduce T.
default_valueOptional default value. Returned when const var lookup failed.

Definition at line 160 of file impl.hpp.

◆ get_const_var() [3/4]

template<typename T>
T get_const_var ( const char * name,
const T & default_value = {} ) const

Get the value of an exported script variable.

This operation will panic if no const var with the provided name was found, or if the type of the variable cannot be converted to the provided type.

An exported variable can be created in a script like this:

export const x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
default_valueOptional default value. Returned when const var lookup failed.
Returns
The value of the variable.

◆ get_const_var() [4/4]

template<typename T>
void get_const_var ( const char * name,
T & out,
const T & default_value = {} ) const

Get the value of an exported script variable.

This operation will panic if no const var with the provided name was found, or if the type of the variable cannot be converted to the provided type.

An exported variable can be created in a script like this:

export const x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
outOptional pointer to out variable. Can be used to automatically deduce T.
default_valueOptional default value. Returned when const var lookup failed.

◆ get_mut_var() [1/4]

template<typename T>
T flecs::world::get_mut_var ( const char * name,
const T & default_value = {} ) const
inline

Get the value of an exported script mut variable.

Unlike a const variable, the value of a mut variable is never folded into expressions that use it.

An exported mut variable can be created in a script like this:

export mut x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
default_valueOptional default value. Returned when mut var lookup failed.
Returns
The value of the variable.

Definition at line 165 of file impl.hpp.

◆ get_mut_var() [2/4]

template<typename T>
void flecs::world::get_mut_var ( const char * name,
T & out,
const T & default_value = {} ) const

Get the value of an exported script mut variable.

Unlike a const variable, the value of a mut variable is never folded into expressions that use it.

An exported mut variable can be created in a script like this:

export mut x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
outOptional pointer to out variable. Can be used to automatically deduce T.
default_valueOptional default value. Returned when mut var lookup failed.

Definition at line 170 of file impl.hpp.

◆ get_mut_var() [3/4]

template<typename T>
T get_mut_var ( const char * name,
const T & default_value = {} ) const

Get the value of an exported script mut variable.

Unlike a const variable, the value of a mut variable is never folded into expressions that use it.

An exported mut variable can be created in a script like this:

export mut x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
default_valueOptional default value. Returned when mut var lookup failed.
Returns
The value of the variable.

◆ get_mut_var() [4/4]

template<typename T>
void get_mut_var ( const char * name,
T & out,
const T & default_value = {} ) const

Get the value of an exported script mut variable.

Unlike a const variable, the value of a mut variable is never folded into expressions that use it.

An exported mut variable can be created in a script like this:

export mut x: f64 = 10

See the Flecs script manual for more details.

Template Parameters
TThe type of the value to obtain.
Parameters
nameThe name of the exported variable.
outOptional pointer to out variable. Can be used to automatically deduce T.
default_valueOptional default value. Returned when mut var lookup failed.

◆ method() [1/4]

template<typename T>
function_builder flecs::world::method ( const char * name) const
inline

Definition at line 58 of file world.hpp.

◆ method() [2/4]

function_builder flecs::world::method ( flecs::entity_t type,
const char * name ) const
inline

Definition at line 53 of file world.hpp.

◆ method() [3/4]

template<typename T>
function_builder method ( const char * name) const

Definition at line 57 of file mixin.inl.

◆ method() [4/4]

function_builder method ( flecs::entity_t type,
const char * name ) const

Definition at line 52 of file mixin.inl.

◆ mut_var()

template<typename T>
flecs::entity flecs::world::mut_var ( const char * name,
const T & value,
flecs::entity_t parent = 0 ) const
inline

Definition at line 38 of file impl.hpp.

◆ script() [1/2]

script_builder flecs::world::script ( const char * name = nullptr) const
inline

Build a script.

See also
ecs_script_init()

Definition at line 32 of file world.hpp.

◆ script() [2/2]

script_builder script ( const char * name = nullptr) const

Build a script.

See also
ecs_script_init()

Definition at line 31 of file mixin.inl.

◆ script_parse() [1/2]

parsed_script flecs::world::script_parse ( const char * name,
const char * code,
const ecs_script_eval_desc_t * desc = nullptr,
ecs_script_eval_result_t * result = nullptr ) const
inline

Definition at line 36 of file world.hpp.

◆ script_parse() [2/2]

parsed_script script_parse ( const char * name,
const char * code,
const ecs_script_eval_desc_t * desc = nullptr,
ecs_script_eval_result_t * result = nullptr ) const

Definition at line 35 of file mixin.inl.

◆ script_run() [1/2]

int flecs::world::script_run ( const char * name,
const char * str ) const
inline

Run a script.

See also
ecs_script_run()

Definition at line 18 of file world.hpp.

◆ script_run() [2/2]

int script_run ( const char * name,
const char * str ) const

Run a script.

See also
ecs_script_run()

Definition at line 17 of file mixin.inl.

◆ script_run_file() [1/2]

int flecs::world::script_run_file ( const char * filename) const
inline

Run a script from a file.

See also
ecs_script_run_file()

Definition at line 25 of file world.hpp.

◆ script_run_file() [2/2]

int script_run_file ( const char * filename) const

Run a script from a file.

See also
ecs_script_run_file()

Definition at line 24 of file mixin.inl.

◆ script_update() [1/2]

int flecs::world::script_update ( flecs::entity_t script,
const char * code,
flecs::entity_t instance = 0 ) const
inline

Definition at line 43 of file world.hpp.

◆ script_update() [2/2]

int script_update ( flecs::entity_t script,
const char * code,
flecs::entity_t instance = 0 ) const

Definition at line 42 of file mixin.inl.

◆ set_mut_var()

template<typename T>
int flecs::world::set_mut_var ( const char * name,
const T & value ) const
inline

Definition at line 50 of file impl.hpp.

◆ to_expr() [1/4]

template<typename T>
flecs::string flecs::world::to_expr ( const T * value)
inline

Convert a value to a string.

Definition at line 81 of file world.hpp.

◆ to_expr() [2/4]

flecs::string flecs::world::to_expr ( flecs::entity_t tid,
const void * value )
inline

Convert a value to a string.

Definition at line 74 of file world.hpp.

◆ to_expr() [3/4]

template<typename T>
flecs::string to_expr ( const T * value)

Convert a value to a string.

Definition at line 80 of file mixin.inl.

◆ to_expr() [4/4]

flecs::string to_expr ( flecs::entity_t tid,
const void * value )

Convert a value to a string.

Definition at line 73 of file mixin.inl.