Array type name
woke.ast.ir.type_name.array_type_name
module
#
ArrayTypeName
class
#
Bases: TypeNameAbc
Array type name.
Example
An array type name can be used:
- inside a VariableDeclaration:
bool[]
in line 1,int[10][20]
in line 11,string[10]
in line 12,address[]
in line 16,
- inside a NewExpression:
address[]
in line 16,
- inside a UsingForDirective:
bool[]
in line 8,
- inside an ArrayTypeName:
int[10]
in line 11,
- inside a Mapping:
C[]
in line 13.
Source code in woke/ast/ir/type_name/array_type_name.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
|
base_type: TypeNameAbc
property
#
Example
uint8[2]
has uint8
(ElementaryTypeName) as a base type.
uint8[2][3]
has uint8[2]
(ArrayTypeName) as a base type.
Returns:
Type | Description |
---|---|
TypeNameAbc
|
Type name IR node describing the base type. |
length: Optional[ExpressionAbc]
property
#
Returns an expression as present in the source code.
Returns:
Type | Description |
---|---|
Optional[ExpressionAbc]
|
Expression defining the length of the array. |
parent: Union[VariableDeclaration, NewExpression, UsingForDirective, ArrayTypeName, Mapping]
property
#
Returns:
Type | Description |
---|---|
Union[VariableDeclaration, NewExpression, UsingForDirective, ArrayTypeName, Mapping]
|
Parent IR node. |