protected override void GetMetadataCore <TValue>(string kind, int iinfo, ref TValue value) { Contracts.Assert(0 <= iinfo & iinfo < InfoCount); if (kind == MetadataUtils.Kinds.IsNormalized && !UseCounter[iinfo]) { MetadataUtils.Marshal <bool, TValue>(IsNormalized, iinfo, ref value); return; } base.GetMetadataCore(kind, iinfo, ref value); }
public override void GetMetadata <TValue>(string kind, int col, ref TValue value) { Contracts.CheckNonEmpty(kind, nameof(kind)); Contracts.CheckParam(0 <= col && col < ColumnCount, nameof(col)); if (col == base.ColumnCount && kind == MetadataUtils.Kinds.IsNormalized) { MetadataUtils.Marshal <bool, TValue>(IsNormalized, col, ref value); } else { base.GetMetadata <TValue>(kind, col, ref value); } }
public void GetMetadata <TValue>(string kind, int col, ref TValue value) { _ectx.CheckNonEmpty(kind, nameof(kind)); _ectx.CheckParam(0 <= col && col < ColumnCount, nameof(col)); if (kind == MetadataUtils.Kinds.SlotNames && _getSlotNamesDict.ContainsKey(_names[col])) { MetadataUtils.Marshal <VBuffer <ReadOnlyMemory <char> >, TValue>(GetSlotNames, col, ref value); } else if (kind == MetadataUtils.Kinds.KeyValues && _getKeyValuesDict.ContainsKey(_names[col])) { MetadataUtils.Marshal <VBuffer <ReadOnlyMemory <char> >, TValue>(GetKeyValues, col, ref value); } else { throw MetadataUtils.ExceptGetMetadata(); } }