| 1080 | } |
| 1081 | |
| 1082 | bool TypeDecl::needDelete() const { |
| 1083 | if ( baseType==Type::tHandle ) { |
| 1084 | return annotation->needDelete(); |
| 1085 | } else if ( baseType==Type::tPointer ) { |
| 1086 | return canDelete(); |
| 1087 | } else if ( baseType==Type::tArray || baseType==Type::tTable ) { |
| 1088 | return true; |
| 1089 | } else if ( baseType==Type::tString ) { |
| 1090 | return false; |
| 1091 | } else if ( baseType==Type::tStructure ) { |
| 1092 | return true; |
| 1093 | } else if ( baseType==Type::tLambda ) { |
| 1094 | return true; |
| 1095 | } else if ( baseType==Type::tIterator ) { |
| 1096 | return true; |
| 1097 | } else if ( baseType==Type::tTuple || baseType==Type::tVariant ) { |
| 1098 | return true; |
| 1099 | } else { |
| 1100 | return false; |
| 1101 | } |
| 1102 | } |
| 1103 | |
| 1104 | bool TypeDecl::canAot() const { |
| 1105 | das_set<Structure *> recAot; |
no outgoing calls
no test coverage detected