OpenClonk
C4AulScriptFunc.h File Reference
#include "script/C4Value.h"
#include "script/C4ValueMap.h"
Include dependency graph for C4AulScriptFunc.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  C4AulBCC
 
class  C4AulScriptFunc
 
union  C4AulBCC.Par
 

Enumerations

enum  C4AulBCCType : int {
  AB_ARRAYA , AB_ARRAYA_SET , AB_PROP , AB_PROP_SET ,
  AB_ARRAY_SLICE , AB_ARRAY_SLICE_SET , AB_DUP , AB_DUP_CONTEXT ,
  AB_STACK_SET , AB_POP_TO , AB_LOCALN , AB_LOCALN_SET ,
  AB_GLOBALN , AB_GLOBALN_SET , AB_PAR , AB_THIS ,
  AB_FUNC , AB_Inc , AB_Dec , AB_BitNot ,
  AB_Not , AB_Neg , AB_Pow , AB_Div ,
  AB_Mul , AB_Mod , AB_Sub , AB_Sum ,
  AB_LeftShift , AB_RightShift , AB_LessThan , AB_LessThanEqual ,
  AB_GreaterThan , AB_GreaterThanEqual , AB_Equal , AB_NotEqual ,
  AB_BitAnd , AB_BitXOr , AB_BitOr , AB_CALL ,
  AB_CALLFS , AB_STACK , AB_INT , AB_BOOL ,
  AB_STRING , AB_CPROPLIST , AB_CARRAY , AB_CFUNCTION ,
  AB_NIL , AB_NEW_ARRAY , AB_NEW_PROPLIST , AB_JUMP ,
  AB_JUMPAND , AB_JUMPOR , AB_JUMPNNIL , AB_CONDN ,
  AB_COND , AB_FOREACH_NEXT , AB_RETURN , AB_ERR ,
  AB_DEBUG , AB_EOFN
}
 

Class Documentation

◆ C4AulBCC.Par

union C4AulBCC.Par

Definition at line 100 of file C4AulScriptFunc.h.

Class Members
C4ValueArray * a
C4AulFunc * f
int32_t i
C4PropList * p
C4String * s
intptr_t X

Enumeration Type Documentation

◆ C4AulBCCType

enum C4AulBCCType : int
Enumerator
AB_ARRAYA 
AB_ARRAYA_SET 
AB_PROP 
AB_PROP_SET 
AB_ARRAY_SLICE 
AB_ARRAY_SLICE_SET 
AB_DUP 
AB_DUP_CONTEXT 
AB_STACK_SET 
AB_POP_TO 
AB_LOCALN 
AB_LOCALN_SET 
AB_GLOBALN 
AB_GLOBALN_SET 
AB_PAR 
AB_THIS 
AB_FUNC 
AB_Inc 
AB_Dec 
AB_BitNot 
AB_Not 
AB_Neg 
AB_Pow 
AB_Div 
AB_Mul 
AB_Mod 
AB_Sub 
AB_Sum 
AB_LeftShift 
AB_RightShift 
AB_LessThan 
AB_LessThanEqual 
AB_GreaterThan 
AB_GreaterThanEqual 
AB_Equal 
AB_NotEqual 
AB_BitAnd 
AB_BitXOr 
AB_BitOr 
AB_CALL 
AB_CALLFS 
AB_STACK 
AB_INT 
AB_BOOL 
AB_STRING 
AB_CPROPLIST 
AB_CARRAY 
AB_CFUNCTION 
AB_NIL 
AB_NEW_ARRAY 
AB_NEW_PROPLIST 
AB_JUMP 
AB_JUMPAND 
AB_JUMPOR 
AB_JUMPNNIL 
AB_CONDN 
AB_COND 
AB_FOREACH_NEXT 
AB_RETURN 
AB_ERR 
AB_DEBUG 
AB_EOFN 

Definition at line 24 of file C4AulScriptFunc.h.

25 {
26  AB_ARRAYA, // array or proplist access
28  AB_PROP, // proplist access with static key
30  AB_ARRAY_SLICE, // array slicing
32  AB_DUP, // duplicate value from stack
33  AB_DUP_CONTEXT, // duplicate value from stack of parent function
34  AB_STACK_SET, // copy top of stack to stack
35  AB_POP_TO, // pop top of stack to stack
36  AB_LOCALN, // a property of this
38  AB_GLOBALN, // a named global
40  AB_PAR, // Par statement
41  AB_THIS, // this()
42  AB_FUNC, // function
43 
44 // prefix
45  AB_Inc, // ++
46  AB_Dec, // --
47  AB_BitNot, // ~
48  AB_Not, // !
49  AB_Neg, // -
50 
51 // postfix
52  AB_Pow, // **
53  AB_Div, // /
54  AB_Mul, // *
55  AB_Mod, // %
56  AB_Sub, // -
57  AB_Sum, // +
58  AB_LeftShift, // <<
59  AB_RightShift, // >>
60  AB_LessThan, // <
61  AB_LessThanEqual, // <=
62  AB_GreaterThan, // >
63  AB_GreaterThanEqual, // >=
64  AB_Equal, // ==
65  AB_NotEqual, // !=
66  AB_BitAnd, // &
67  AB_BitXOr, // ^
68  AB_BitOr, // |
69 
70  AB_CALL, // direct object call
71  AB_CALLFS, // failsafe direct call
72  AB_STACK, // push nulls / pop
73  AB_INT, // constant: int
74  AB_BOOL, // constant: bool
75  AB_STRING, // constant: string
76  AB_CPROPLIST, // constant: proplist
77  AB_CARRAY, // constant: array
78  AB_CFUNCTION, // constant: function
79  AB_NIL, // constant: nil
80  AB_NEW_ARRAY, // semi-constant: array
81  AB_NEW_PROPLIST, // create a new proplist
82  AB_JUMP, // jump
83  AB_JUMPAND, // jump if convertible to false, else pop the stack
84  AB_JUMPOR, // jump if convertible to true, else pop the stack
85  AB_JUMPNNIL, // jump if not nil, else pop the stack
86  AB_CONDN, // conditional jump (negated, pops stack)
87  AB_COND, // conditional jump (pops stack)
88  AB_FOREACH_NEXT, // foreach: next element
89  AB_RETURN, // return statement
90  AB_ERR, // parse error at this position
91  AB_DEBUG, // debug break
92  AB_EOFN, // end of function
93 };
@ AB_Pow
@ AB_BitAnd
@ AB_FOREACH_NEXT
@ AB_LeftShift
@ AB_ARRAY_SLICE_SET
@ AB_THIS
@ AB_Sum
@ AB_GreaterThanEqual
@ AB_Inc
@ AB_DEBUG
@ AB_INT
@ AB_Mul
@ AB_ARRAYA
@ AB_EOFN
@ AB_Sub
@ AB_PAR
@ AB_LessThan
@ AB_LessThanEqual
@ AB_ARRAYA_SET
@ AB_RightShift
@ AB_GreaterThan
@ AB_PROP
@ AB_BitNot
@ AB_CPROPLIST
@ AB_Equal
@ AB_BitOr
@ AB_CALLFS
@ AB_ERR
@ AB_CALL
@ AB_FUNC
@ AB_BOOL
@ AB_POP_TO
@ AB_Mod
@ AB_GLOBALN
@ AB_STRING
@ AB_NIL
@ AB_NotEqual
@ AB_CARRAY
@ AB_STACK_SET
@ AB_Div
@ AB_STACK
@ AB_NEW_ARRAY
@ AB_ARRAY_SLICE
@ AB_LOCALN
@ AB_GLOBALN_SET
@ AB_DUP
@ AB_LOCALN_SET
@ AB_JUMPAND
@ AB_DUP_CONTEXT
@ AB_JUMPNNIL
@ AB_Dec
@ AB_CONDN
@ AB_JUMPOR
@ AB_CFUNCTION
@ AB_Neg
@ AB_COND
@ AB_JUMP
@ AB_Not
@ AB_BitXOr
@ AB_RETURN
@ AB_NEW_PROPLIST
@ AB_PROP_SET