static EncoderTraitsChoice() { TypeParam = Util.MaxChoice( BitEncoders.MegaloScriptVarReferenceType as IEnumBitEncoder <uint>, BitEncoders.MegaloScriptValueIndexTarget as IEnumBitEncoder <uint>, x => x.BitCountTrait); TypeParam = Util.MaxChoice( TypeParam, BitEncoders.MegaloScriptVariableType as IEnumBitEncoder <uint>, x => x.BitCountTrait); TypeTraits = Util.MaxChoice( BitEncoders.MegaloScriptValueIndexTraits as IEnumBitEncoder <uint>, BitEncoders.MegaloScriptValueEnumTraits as IEnumBitEncoder <uint>, x => x.BitCountTrait); TypeTraits = Util.MaxChoice( TypeTraits, BitEncoders.MegaloScriptVariableSet as IEnumBitEncoder <uint>, x => x.BitCountTrait); }
public static BitFieldTraits For <TUInt>(IEnumBitEncoder <TUInt> enumEncoder, BitFieldTraits prev) { Contract.Requires(enumEncoder != null); return(new BitFieldTraits(enumEncoder.BitCountTrait, prev)); }