Changes in src/AST/Decl.cpp [8c55d34:90be0cf]
- File:
-
- 1 edited
-
src/AST/Decl.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Decl.cpp
r8c55d34 r90be0cf 169 169 } 170 170 171 const std::string EnumDecl::getUnmangeldArrayName( const ast::EnumAttribute attr ) const {172 switch( attr ) {173 case ast::EnumAttribute::Value: return "values_" + name ;174 case ast::EnumAttribute::Label: return "labels_" + name;175 default: /* Posn does not generate array */176 return "";177 }178 }179 180 unsigned EnumDecl::calChildOffset(const std::string & target) const{181 unsigned offset = 0;182 for (auto childEnum: inlinedDecl) {183 auto childDecl = childEnum->base;184 if (childDecl->name == target) {185 return offset;186 }187 offset += childDecl->members.size();188 }189 std::cerr << "Cannot find the target enum" << std::endl;190 return 0;191 }192 193 unsigned EnumDecl::calChildOffset(const ast::EnumInstType * target) const{194 return calChildOffset(target->base->name);195 }196 197 bool EnumDecl::isSubTypeOf(const ast::EnumDecl * other) const {198 if (name == other->name) return true;199 for (auto inlined: other->inlinedDecl) {200 if (isSubTypeOf(inlined->base)) return true;201 }202 return false;203 }204 205 171 bool EnumDecl::isTyped() const { return base; } 206 172
Note:
See TracChangeset
for help on using the changeset viewer.