public IMixEvaluator MixEntryModelToMixEvaluator(MixEntryModel mixEntryModel) { if (mixEntryModel == null) { return(new NoneMixEvaluator()); } switch (mixEntryModel.Type & MixType.TYPE_MASK) { case MixType.NUMBER_TYPE: return(NumericMixEntryModelToMixEvaluator(mixEntryModel.Type, mixEntryModel.Input)); case MixType.STRING_TYPE: return(StringMixEntryModelToMixEvaluator(mixEntryModel.Type, mixEntryModel.Input)); case MixType.NESTED_TYPE: return(NestedMixEntryModelToMixEvaluator(mixEntryModel)); case MixType.RANGE_TYPE: return(RangeMixEntryModelToMixEvaluator(mixEntryModel.Type, mixEntryModel.Input)); case MixType.MEMBER_TYPE: return(MemberMixEntryModelToMixEvaluator(mixEntryModel.Type, mixEntryModel.Input)); default: DebugHelper.Assert(new CallerInfo(), mixEntryModel.Type == MixType.None, "Unexpected mix type: {0}", mixEntryModel.Type); return(new NoneMixEvaluator()); } }
public int Save(int mixId, bool isRoot) { List <int> allIds = new List <int>(); foreach (IMixEvaluator mix in Mixes) { allIds.Add(mix.Save(mixId, false)); } return(MixEntryModel.SaveMix(MixType, String.Join(SplitToken, allIds), mixId, isRoot)); }
private IMixEvaluator NestedMixEntryModelToMixEvaluator(MixEntryModel mixEntryModel) { string[] parts = mixEntryModel.Input.Split(NestedMixEvaluator.SplitToken[0]); List <IMixEvaluator> mixes = new List <IMixEvaluator>(); foreach (string s in parts) { mixes.Add(MixEntryModelToMixEvaluator(rootModel.LookupMixEntry(int.Parse(s)))); } return(NestedMixEntryModelToMixEvaluator(mixEntryModel.Type, mixes)); }
public int Save(int mixId, bool isRoot) { return(MixEntryModel.SaveMix(MixType, Target.ToString(), mixId, isRoot)); }
public int Save(int mixId, bool isRoot) { return(MixEntryModel.SaveMix(MixType, string.Empty, mixId, isRoot)); }