diff --git a/chore/llcppg/ast/ast.go b/chore/llcppg/ast/ast.go index 07673675..ec97fd08 100644 --- a/chore/llcppg/ast/ast.go +++ b/chore/llcppg/ast/ast.go @@ -43,6 +43,16 @@ type PPD interface { // preprocessing directive ppdNode() } +// ============================================================================= +type AccessSpecifier uint + +const ( + Invalid AccessSpecifier = iota + Public + Protected + Private +) + // ============================================================================= // Expressions (Types are also expressions) @@ -282,8 +292,18 @@ func (*EnumTypeDecl) declNode() {} // Ret Name(Params); type FuncDecl struct { DeclBase - Name *Ident - Type *FuncType + Name *Ident + Type *FuncType + IsInline bool + IsStatic bool + + // Class method specific fields + IsConst bool // const member function + IsExplicit bool // explicit constructor + IsConstructor bool + IsDestructor bool + IsVirtual bool + IsOverride bool } func (*FuncDecl) declNode() {}