Browse Source

Implemented support for pack expansion types in the AST converter.

pull/254/merge
triton 11 years ago
parent
commit
bf1ce5b523
  1. 14
      src/Core/Parser/ASTConverter.cs

14
src/Core/Parser/ASTConverter.cs

@ -27,6 +27,7 @@ namespace CppSharp
public abstract TRet VisitInjectedClassName(InjectedClassNameType type); public abstract TRet VisitInjectedClassName(InjectedClassNameType type);
public abstract TRet VisitDependentName(DependentNameType type); public abstract TRet VisitDependentName(DependentNameType type);
public abstract TRet VisitBuiltin(BuiltinType type); public abstract TRet VisitBuiltin(BuiltinType type);
public abstract TRet VisitPackExpansion(PackExpansionType type);
public TRet Visit(Parser.AST.Type type) public TRet Visit(Parser.AST.Type type)
{ {
@ -105,6 +106,11 @@ namespace CppSharp
var _type = new BuiltinType(type.__Instance); var _type = new BuiltinType(type.__Instance);
return VisitBuiltin(_type); return VisitBuiltin(_type);
} }
case TypeKind.PackExpansion:
{
var _type = new PackExpansionType(type.__Instance);
return VisitPackExpansion(_type);
}
} }
throw new ArgumentOutOfRangeException(); throw new ArgumentOutOfRangeException();
@ -574,6 +580,14 @@ namespace CppSharp
throw new ArgumentOutOfRangeException("type"); throw new ArgumentOutOfRangeException("type");
} }
} }
public override AST.Type VisitPackExpansion(PackExpansionType type)
{
var _type = new CppSharp.AST.PackExpansionType();
_type.IsDependent = type.IsDependent;
VisitType(type, _type);
return _type;
}
} }
public unsafe class DeclConverter : DeclVisitor<AST.Declaration> public unsafe class DeclConverter : DeclVisitor<AST.Declaration>

Loading…
Cancel
Save