本文整理汇总了C#中ClassTemplateSpecialization类的典型用法代码示例。如果您正苦于以下问题:C# ClassTemplateSpecialization类的具体用法?C# ClassTemplateSpecialization怎么用?C# ClassTemplateSpecialization使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ClassTemplateSpecialization类属于命名空间,在下文中一共展示了ClassTemplateSpecialization类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MarkForGeneration
private static void MarkForGeneration(ClassTemplateSpecialization specialization)
{
specialization.GenerationKind = GenerationKind.Generate;
Declaration declaration = specialization.TemplatedDecl.TemplatedDecl;
while (declaration != null)
{
declaration.GenerationKind = GenerationKind.Generate;
declaration = declaration.Namespace;
}
}
示例2: VisitClassTemplateSpecializationDecl
public override bool VisitClassTemplateSpecializationDecl(ClassTemplateSpecialization specialization)
{
if (!specialization.IsDependent &&
(!specialization.TranslationUnit.IsSystemHeader ||
specialization.IsSupportedStdSpecialization()))
{
var cppTypePrinter = new CppTypePrinter
{
PrintScopeKind = CppTypePrintScopeKind.Qualified,
PrintLogicalNames = true
};
var cppCode = specialization.Visit(cppTypePrinter);
var module = specialization.TranslationUnit.Module;
if (templateInstantiations.ContainsKey(module))
templateInstantiations[module].Add(cppCode);
else
templateInstantiations.Add(module, new HashSet<string> { cppCode });
}
return true;
}
示例3: ClassTemplateSpecialization
protected ClassTemplateSpecialization(ClassTemplateSpecialization.Internal* native, bool isInternalImpl = false)
: base((CppSharp.Parser.AST.Class.Internal*) native)
{
}
示例4: __CopyValue
private static ClassTemplateSpecialization.Internal* __CopyValue(ClassTemplateSpecialization.Internal native)
{
var ret = Marshal.AllocHGlobal(552);
CppSharp.Parser.AST.ClassTemplateSpecialization.Internal.cctor_2(ret, new global::System.IntPtr(&native));
return (ClassTemplateSpecialization.Internal*) ret;
}
示例5: __CreateInstance
public static ClassTemplateSpecialization __CreateInstance(ClassTemplateSpecialization.Internal native)
{
return new ClassTemplateSpecialization(native);
}
示例6: ClassTemplateSpecialization
protected ClassTemplateSpecialization(ClassTemplateSpecialization.Internal* native, bool skipVTables = false)
: base((CppSharp.Parser.AST.Class.Internal*) null)
{
__PointerAdjustment = 0;
if (native == null)
return;
__Instance = new global::System.IntPtr(native);
}
示例7: __CreateInstance
public static ClassTemplateSpecialization __CreateInstance(ClassTemplateSpecialization.Internal native, bool skipVTables = false)
{
return new ClassTemplateSpecialization(native, skipVTables);
}
示例8: __CopyValue
private static void* __CopyValue(ClassTemplateSpecialization.__Internal native)
{
var ret = Marshal.AllocHGlobal(332);
global::CppSharp.Parser.AST.ClassTemplateSpecialization.__Internal.cctor_1(ret, new global::System.IntPtr(&native));
return ret.ToPointer();
}
示例9: ClassTemplateSpecialization
internal ClassTemplateSpecialization(ClassTemplateSpecialization.Internal native)
: this(&native)
{
}
示例10: ClassTemplateSpecialization
private ClassTemplateSpecialization(ClassTemplateSpecialization.Internal native)
: this(__CopyValue(native))
{
__ownsNativeInstance = true;
}
示例11: ClassTemplateSpecialization
internal ClassTemplateSpecialization(ClassTemplateSpecialization.Internal native)
: this(__CopyValue(native))
{
}
示例12: IsSupportedStdSpecialization
private static bool IsSupportedStdSpecialization(ClassTemplateSpecialization specialization)
{
return IsSupportedStdType(specialization) &&
specialization.Arguments[0].Type.Type.IsPrimitiveType(PrimitiveType.Char);
}