| 5787 | const char *getName() HXCPP_OVERRIDE { return "ArrayIExpr"; } |
| 5788 | |
| 5789 | CppiaExpr *link(CppiaModule &inModule) HXCPP_OVERRIDE |
| 5790 | { |
| 5791 | TypeData *type = inModule.types[classId]; |
| 5792 | |
| 5793 | CppiaExpr *replace = 0; |
| 5794 | |
| 5795 | if (type->name==HX_CSTRING("Dynamic")) |
| 5796 | { |
| 5797 | replace = new DynamicArrayI(this, thisExpr, iExpr); |
| 5798 | } |
| 5799 | else |
| 5800 | { |
| 5801 | if (!type->arrayType) |
| 5802 | { |
| 5803 | replace = new ArrayAccessI(this,classId, thisExpr, iExpr); |
| 5804 | } |
| 5805 | else |
| 5806 | { |
| 5807 | Expressions val; |
| 5808 | val.push_back(iExpr); |
| 5809 | replace = createArrayBuiltin(this, type->arrayType, thisExpr, HX_CSTRING("__get"), val); |
| 5810 | } |
| 5811 | } |
| 5812 | replace = replace->link(inModule); |
| 5813 | |
| 5814 | delete this; |
| 5815 | return replace; |
| 5816 | } |
| 5817 | |
| 5818 | }; |
| 5819 |
nothing calls this directly
no test coverage detected