Changeset 90e683b for src/AST/Decl.hpp
- Timestamp:
- Feb 3, 2025, 11:46:55 AM (11 months ago)
- Branches:
- master
- Children:
- 54f70c6
- Parents:
- bbbff10
- File:
-
- 1 edited
-
src/AST/Decl.hpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Decl.hpp
rbbbff10 r90e683b 306 306 enum class EnumAttribute{ Value, Posn, Label }; 307 307 308 /// enum declaration `enum Foo { ... };` 308 /// enum declaration `enum Foo { ... };` or `enum(...) Foo { ... };` 309 309 class EnumDecl final : public AggregateDecl { 310 310 public: … … 317 317 std::vector< ast::ptr<ast::EnumInstType>> inlinedDecl; // child enums 318 318 319 bool is_c_enum () const { return !isCfa; } 320 bool is_opaque_enum() const { return isCfa && nullptr == base; } 321 bool is_typed_enum () const { return isCfa && nullptr != base; } 322 319 323 EnumDecl( const CodeLocation& loc, const std::string& name, bool isCfa = false, 320 324 std::vector<ptr<Attribute>>&& attrs = {}, Linkage::Spec linkage = Linkage::Cforall, … … 331 335 const char * typeString() const override { return aggrString( Enum ); } 332 336 333 bool isTyped() const;334 bool isOpaque() const;335 337 private: 336 338 EnumDecl * clone() const override { return new EnumDecl{ *this }; }
Note:
See TracChangeset
for help on using the changeset viewer.