Table of Contents

Class LayoutDeclarationInfo

Namespace
CStructSharp.Introspection
Assembly
CStructSharp.dll

One exported declaration of a compiled layout.

public sealed class LayoutDeclarationInfo
Inheritance
LayoutDeclarationInfo
Inherited Members

Properties

Alignment

Gets the alignment aligned placement uses for the type.

public int Alignment { get; }

Property Value

int

ArrayShape

Gets the fixed dimensions of an array typedef (outermost first); empty otherwise.

public IReadOnlyList<int> ArrayShape { get; }

Property Value

IReadOnlyList<int>

Fields

Gets the fields of a struct or union in declaration order (empty otherwise).

public IReadOnlyList<LayoutFieldInfo> Fields { get; }

Property Value

IReadOnlyList<LayoutFieldInfo>

Kind

Gets what the declaration is.

public LayoutDeclarationKind Kind { get; }

Property Value

LayoutDeclarationKind

Members

Gets the members of an enum or flag in declaration order (empty otherwise).

public IReadOnlyList<LayoutEnumMemberInfo> Members { get; }

Property Value

IReadOnlyList<LayoutEnumMemberInfo>

Name

Gets the declared name.

public string Name { get; }

Property Value

string

PointerDepth

Gets the pointer depth a typedef adds to its aliased type.

public int PointerDepth { get; }

Property Value

int

Size

Gets the encoded size in bytes when it is fixed; null for a runtime-sized composite.

public int? Size { get; }

Property Value

int?

UnderlyingType

Gets the backing type of an enum or flag, or the aliased type of a typedef; null for composites.

public string? UnderlyingType { get; }

Property Value

string