Blender Git Commit Log

Git Commits -> Revision e6bf664

Revision e6bf664 by Lukas Toenne (object_nodes, strand_nodes)
December 12, 2015, 11:40 (GMT)
New data type for constant (!) strings.

The const-ness is very important: strings are only stored as const char*
on the stack, which point to memory inside the instructions list.
The instructions contain the actual char array, with a null terminator.

This does not allow allocating new strings during eval, but it makes
it possible to use static strings as identifiers and keys for global data.
Eventually we could allow string operations through an allocation system
similar to DerivedMesh handling, with init/release nodes to manage
alloc/free.

Commit Details:

Full Hash: e6bf664d789028511e1254ef873226b24b090023
Parent Commit: 465327f
Lines Changed: +99, -8

10 Modified Paths:

/source/blender/blenvm/bvm/bvm_eval.cc (+11, -0) (Diff)
/source/blender/blenvm/bvm/bvm_eval_common.h (+10, -0) (Diff)
/source/blender/blenvm/bvm/bvm_function.h (+13, -0) (Diff)
/source/blender/blenvm/bvm/bvm_opcode.h (+2, -0) (Diff)
/source/blender/blenvm/BVM_types.h (+1, -0) (Diff)
/source/blender/blenvm/compile/bvm_codegen.cc (+27, -2) (Diff)
/source/blender/blenvm/compile/bvm_codegen.h (+1, -0) (Diff)
/source/blender/blenvm/compile/bvm_nodegraph.cc (+17, -2) (Diff)
/source/blender/blenvm/util/bvm_util_typedesc.h (+16, -4) (Diff)
/source/blender/makesrna/intern/rna_blenvm.c (+1, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021