Class Column
One column of a table schema: its name, value class, integer shape, array length and key roles.
public class Column : IDisposable
- Inheritance
-
Column
- Implements
- Inherited Members
Constructors
Column()
public Column()
Column(Column)
Copy-construct: a deep copy of other (the C++ copy constructor).
public Column(Column other)
Parameters
otherColumn
Properties
ArrayLen
Element count; 1 for scalar columns.
public ushort ArrayLen { get; set; }
Property Value
Bits
Integer element width in bits; 32 for float/string refs.
public byte Bits { get; set; }
Property Value
DbdName
The verbatim WoWDBDefs spelling of the column ('MapName_lang'); column_index accepts it as an alias. Empty for columns without a DBD identity (reflection-derived schemas).
public string DbdName { get; }
Property Value
IsId
Whether this is the table's primary key (\(id\)).
public bool IsId { get; set; }
Property Value
IsRelation
Whether this is a relationship key (\(relation\)).
public bool IsRelation { get; set; }
Property Value
IsSigned
Integer signedness; false for non-Int columns.
public bool IsSigned { get; set; }
Property Value
LocaleCount
LocString language slots (8 or 16); 0 otherwise.
public byte LocaleCount { get; set; }
Property Value
Name
The column name: the snake_case spelling of the WoWDBDefs column ('MapName' -> 'map_name'). This spelling is a stable cross-release contract on every binding surface.
public string Name { get; }
Property Value
Noninline
Whether the column holds no bytes inside the record image (\(noninline\)).
public bool Noninline { get; set; }
Property Value
Type
The logical value class.
public ColumnType Type { get; set; }
Property Value
Methods
DbdNameView()
public string DbdNameView()
Returns
Dispose()
Release the native object now. Optional: the finalizer releases it on
collection anyway - dispose (or using) when you want native memory back
promptly.
public virtual void Dispose()
FieldSlots()
public uint FieldSlots()
Returns
InlineBytes()
public ulong InlineBytes()
Returns
NameView()
public string NameView()
Returns
StringSlots()
public ulong StringSlots()