protected HexOffsetFormatter(int bitSize, bool lowerCaseHex, string prefix, string suffix, HexOffsetFormat format) { if (bitSize <= 0 || (bitSize % 4) != 0) throw new ArgumentOutOfRangeException(nameof(bitSize)); if (prefix == null) throw new ArgumentNullException(nameof(prefix)); if (suffix == null) throw new ArgumentNullException(nameof(suffix)); FormattedLength = prefix.Length + bitSize / 4 + suffix.Length; this.prefix = prefix; this.suffix = suffix; this.bitSize = bitSize; this.lowerCaseHex = lowerCaseHex; Format = format; }
static HexOffsetFormatter CreateOffsetFormatter(HexOffsetFormat format, int bitSize, bool lowerCaseHex) { bitSize = (bitSize + 3) / 4 * 4; switch (format) { case HexOffsetFormat.Hex: return(new OnlyHexOffsetFormatter(bitSize, lowerCaseHex)); case HexOffsetFormat.HexCSharp: return(new HexCSharpOffsetFormatter(bitSize, lowerCaseHex)); case HexOffsetFormat.HexVisualBasic: return(new HexVisualBasicOffsetFormatter(bitSize, lowerCaseHex)); case HexOffsetFormat.HexAssembly: return(new HexAssemblyOffsetFormatter(bitSize, lowerCaseHex)); default: throw new ArgumentOutOfRangeException(nameof(bitSize)); } }
protected HexOffsetFormatter(int bitSize, bool lowerCaseHex, string prefix, string suffix, HexOffsetFormat format) { if (bitSize <= 0 || (bitSize % 4) != 0) { throw new ArgumentOutOfRangeException(nameof(bitSize)); } if (prefix == null) { throw new ArgumentNullException(nameof(prefix)); } if (suffix == null) { throw new ArgumentNullException(nameof(suffix)); } FormattedLength = prefix.Length + bitSize / 4 + suffix.Length; this.prefix = prefix; this.suffix = suffix; this.bitSize = bitSize; this.lowerCaseHex = lowerCaseHex; Format = format; }
static HexOffsetFormatter CreateOffsetFormatter(HexOffsetFormat format, int bitSize, bool lowerCaseHex) { bitSize = (bitSize + 3) / 4 * 4; switch (format) { case HexOffsetFormat.Hex: return new OnlyHexOffsetFormatter(bitSize, lowerCaseHex); case HexOffsetFormat.HexCSharp: return new HexCSharpOffsetFormatter(bitSize, lowerCaseHex); case HexOffsetFormat.HexVisualBasic: return new HexVisualBasicOffsetFormatter(bitSize, lowerCaseHex); case HexOffsetFormat.HexAssembly: return new HexAssemblyOffsetFormatter(bitSize, lowerCaseHex); default: throw new ArgumentOutOfRangeException(nameof(bitSize)); } }