// Throw if a given unit does exist private void ValidateNewSynonym(UnitFactorSynonyms synonyms) { var preExistingUnit = Units.FindUnit(synonyms); if (preExistingUnit != null) { throw new UnitAlreadyExistsException(preExistingUnit.ToString()); } }
// Find if some synonym of a given UnitFactor is included in this UnitFactor internal bool Contains(UnitFactorSynonyms synonyms) { foreach (var syn in synonyms.Synonyms) { if (this.Contains(syn)) { return(true); } } return(false); }
/// <summary> /// Add a new unit with a new set of synonyms /// </summary> /// <param name="synonyms">Object of synonyms</param> /// <param name="factor"></param> public void AddUnit(UnitFactorSynonyms synonyms, double factor) { ValidateNewSynonym(synonyms); Units.Add(synonyms, factor); }