private LexoRank(string value) { _value = value; var parts = _value.Split('|'); Bucket = LexoRankBucket.From(parts[0]); Decimal = LexoDecimal.Parse(parts[1], NumeralSystem); }
public static LexoRank From(LexoRankBucket bucket, LexoDecimal dec) { if (!dec.GetSystem().Name.Equals(NumeralSystem.Name)) { throw new LexoException("Expected different system"); } return(new LexoRank(bucket, dec)); }
public static LexoRank Max(LexoRankBucket bucket) { return(From(bucket, MaxDecimal)); }
private LexoRank(LexoRankBucket bucket, LexoDecimal dec) { _value = bucket.Format() + "|" + FormatDecimal(dec); Bucket = bucket; Decimal = dec; }
public static LexoRank Initial(LexoRankBucket bucket) { return(bucket == LexoRankBucket.Bucket0 ? From(bucket, InitialMinDecimal) : From(bucket, InitialMaxDecimal)); }