internal static VersionStamp Custom(ulong version, ushort order, int userVersion, bool incomplete) { Contract.Between(userVersion, 0, 0xFFFF, nameof(userVersion), "Local version must fit in 16-bits."); return(new VersionStamp(version, order, (ushort)userVersion, incomplete ? (ushort)(FLAGS_IS_INCOMPLETE | FLAGS_HAS_VERSION) : FLAGS_HAS_VERSION)); }
public static VersionStamp Complete(ulong version, ushort order, int userVersion) { Contract.Between(userVersion, 0, 0xFFFF, nameof(userVersion), "Local version must fit in 16-bits, and cannot be 0xFFFF."); return(new VersionStamp(version, order, (ushort)userVersion, FLAGS_HAS_VERSION)); }
public static VersionStamp Incomplete(int userVersion) { Contract.Between(userVersion, 0, 0xFFFF, nameof(userVersion), "Local version must fit in 16-bits."); return(new VersionStamp(PLACEHOLDER_VERSION, PLACEHOLDER_ORDER, (ushort)userVersion, FLAGS_IS_INCOMPLETE | FLAGS_HAS_VERSION)); }