Skip to content

Commit 94fffda

Browse files
committed
Implement basic visiting behavior in some CodeGenerator overloads.
1 parent 5cb683a commit 94fffda

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

src/Generator/Generators/CodeGenerator.cs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -367,7 +367,7 @@ public virtual bool VisitParameterDecl(Parameter parameter)
367367

368368
public virtual bool VisitTypedefNameDecl(TypedefNameDecl typedef)
369369
{
370-
throw new NotImplementedException();
370+
return typedef.Type.Visit(this, typedef.QualifiedType.Qualifiers);
371371
}
372372

373373
public virtual bool VisitTypedefDecl(TypedefDecl typedef)
@@ -499,7 +499,10 @@ public virtual bool VisitFunctionType(FunctionType function, TypeQualifiers qual
499499

500500
public virtual bool VisitPointerType(PointerType pointer, TypeQualifiers quals)
501501
{
502-
throw new NotImplementedException();
502+
if (pointer.Pointee == null)
503+
return false;
504+
505+
return pointer.QualifiedPointee.Visit(this);
503506
}
504507

505508
public virtual bool VisitMemberPointerType(MemberPointerType member, TypeQualifiers quals)
@@ -509,12 +512,12 @@ public virtual bool VisitMemberPointerType(MemberPointerType member, TypeQualifi
509512

510513
public virtual bool VisitBuiltinType(BuiltinType builtin, TypeQualifiers quals)
511514
{
512-
throw new NotImplementedException();
515+
return VisitPrimitiveType(builtin.Type, quals);
513516
}
514517

515518
public virtual bool VisitTypedefType(TypedefType typedef, TypeQualifiers quals)
516519
{
517-
throw new NotImplementedException();
520+
return typedef.Declaration.Visit(this);
518521
}
519522

520523
public virtual bool VisitAttributedType(AttributedType attributed, TypeQualifiers quals)
@@ -599,7 +602,7 @@ public virtual bool VisitUnsupportedType(UnsupportedType type, TypeQualifiers qu
599602

600603
public virtual bool VisitQualifiedType(QualifiedType type)
601604
{
602-
throw new NotImplementedException();
605+
return type.Type.Visit(this, type.Qualifiers);
603606
}
604607

605608
public virtual bool VisitStmt(Stmt stmt)

0 commit comments

Comments
 (0)