/////////////////////////////////////////////////////////////////////// public virtual ReturnCode ToDictionary( string pattern, bool noCase, ref ObjectDictionary dictionary, ref Result error ) { if (dictionary == null) { dictionary = new ObjectDictionary(); } foreach (KeyValuePair <TKey, TValue> pair in this) { string key = StringOps.GetStringFromObject(pair.Key); if ((pattern == null) || StringOps.Match(null, MatchMode.Glob, key, pattern, noCase)) { dictionary[key] = pair.Value; /* MERGE */ } } return(ReturnCode.Ok); }
/////////////////////////////////////////////////////////////////////// public static ReturnCode GetNames( ResourceManager resourceManager, /* in */ CultureInfo cultureInfo, /* in */ ref StringList list, /* in, out */ ref Result error /* out */ ) { if (resourceManager == null) { error = "invalid resource manager"; return(ReturnCode.Error); } if (cultureInfo == null) { cultureInfo = Value.GetDefaultCulture(); } ResourceSet resourceSet = resourceManager.GetResourceSet( cultureInfo, true, false); if (resourceSet == null) { error = "invalid resource set"; return(ReturnCode.Error); } StringList localList = null; foreach (DictionaryEntry entry in resourceSet) { string name = StringOps.GetStringFromObject(entry.Key); if (name == null) { continue; } if (localList == null) { localList = new StringList(); } localList.Add(name); } if (localList != null) { if (list == null) { list = new StringList(); } list.AddRange(localList); } return(ReturnCode.Ok); }
/////////////////////////////////////////////////////////////////////// public void AddKeys( IEnumerable collection, string value ) { foreach (object item in collection) { this.Add(StringOps.GetStringFromObject(item), value); } }
/////////////////////////////////////////////////////////////////////// #region Private Constructors internal ElementDictionary( EventWaitHandle variableEvent, IDictionary dictionary, MatchMode mode, string pattern, bool noCase, bool matchKey, bool matchValue ) : this(variableEvent, DefaultCapacity) { foreach (DictionaryEntry entry in dictionary) { string key = entry.Key.ToString(); object value = entry.Value; if (pattern == null) { this.Add(key, value); continue; } string text; if (matchKey) { if (matchValue) { text = StringList.MakeList(key, value); } else { text = key; } } else if (matchValue) { text = StringOps.GetStringFromObject(value); } else { // // NOTE: Nothing to match against, just skip it. // continue; } if (StringOps.Match(null, mode, text, pattern, noCase)) { this.Add(key, value); } } }
/////////////////////////////////////////////////////////////////////// public void AddObjects( IEnumerable collection ) { #if CACHE_STRINGLIST_TOSTRING InvalidateCachedString(); #endif foreach (object item in collection) { base.Add(StringOps.GetStringFromObject(item)); } }
/////////////////////////////////////////////////////////////////////// public void Add( StringTransformCallback callback, IEnumerable <Result> collection ) { #if CACHE_STRINGLIST_TOSTRING InvalidateCachedString(); #endif foreach (Result item in collection) { base.Add(callback(StringOps.GetStringFromObject(item))); } }
/////////////////////////////////////////////////////////////////////// public void Add( IList list, int startIndex ) { #if CACHE_STRINGLIST_TOSTRING InvalidateCachedString(); #endif for (int index = startIndex; index < list.Count; index++) { base.Add(StringOps.GetStringFromObject(list[index])); } }
/////////////////////////////////////////////////////////////////////// public static StringList GetRange( IList list, int firstIndex, int lastIndex, bool nullIfEmpty ) { if (list == null) { return(null); } StringList range = null; if (firstIndex == Index.Invalid) { firstIndex = 0; } if (lastIndex == Index.Invalid) { lastIndex = list.Count - 1; } if ((!nullIfEmpty || ((list.Count > 0) && ((lastIndex - firstIndex) > 0)))) { range = new StringList(); for (int index = firstIndex; index <= lastIndex; index++) { range.Add(StringOps.GetStringFromObject(list[index])); } } return(range); }
/////////////////////////////////////////////////////////////////////// #region System.Object Overrides public override string ToString() { return(StringOps.GetStringFromObject( value, DefaultValue, !(value is Variable))); }
/////////////////////////////////////////////////////////////////////// public StringPairList ToStringPairList() { StringPairList result = new StringPairList(); if (variable != null) { result.Add(variable.Kind.ToString()); result.Add((IPair <string>)null); if (variable.Name != null) { result.Add("name", variable.Name); } else { result.Add("name", String.Empty); } if (EntityOps.IsArray2(variable)) { ElementDictionary arrayValue = variable.ArrayValue; if (arrayValue != null) { result.Add("<array>"); if (index != null) { object value; if (arrayValue.TryGetValue(index, out value)) { if (value != null) { result.Add("value", StringOps.GetStringFromObject( value, null, !(value is TraceInfo))); } else { result.Add("value", FormatOps.DisplayNull); } } else { result.Add("value", "<noValue>"); } } else { result.Add("value", "<noIndex>"); } } else { result.Add("<noArray>"); } } else { object value = variable.Value; if (value != null) { result.Add("value", StringOps.GetStringFromObject(value)); } else { result.Add("value", "<noValue>"); } } result.Add("flags", variable.Flags.ToString()); result.Add((IPair <string>)null); } result.Add("TraceInfo"); result.Add((IPair <string>)null); if (trace != null) { result.Add("trace", trace.ToString()); } else { result.Add("trace", "<noTrace>"); } result.Add("breakpointType", breakpointType.ToString()); if (frame != null) { result.Add("frame", (frame.Name != null) ? frame.Name : "<noFrameName>"); } else { result.Add("frame", "<noFrame>"); } if (name != null) { result.Add("name", name); } else { result.Add("name", "<noName>"); } if (index != null) { result.Add("index", index); } else { result.Add("index", "<noIndex>"); } result.Add("flags", flags.ToString()); if (oldValue != null) { result.Add("oldValue", StringOps.GetStringFromObject(oldValue)); } else { result.Add("oldValue", "<noOldValue>"); } if (newValue != null) { result.Add("newValue", StringOps.GetStringFromObject(newValue)); } else { result.Add("newValue", "<noNewValue>"); } if (oldValues != null) { result.Add("oldValues", oldValues.ToString()); } else { result.Add("oldValues", "<noOldValues>"); } if (newValues != null) { result.Add("newValues", newValues.ToString()); } else { result.Add("newValues", "<noNewValues>"); } if (list != null) { result.Add("list", list.ToString()); } else { result.Add("list", "<noList>"); } result.Add("cancel", cancel.ToString()); result.Add("postProcess", postProcess.ToString()); result.Add("returnCode", returnCode.ToString()); return(result); }