UnityEditor.Graphs.ParameterControllerView.CreateSearchParameterList C# (CSharp) Method

CreateSearchParameterList() protected method

protected CreateSearchParameterList ( string newSearch, int searchMode ) : void
newSearch string
searchMode int
return void
        protected void CreateSearchParameterList(string newSearch, int searchMode)
        {
            char[] separator = new char[] { ' ' };
            string[] strArray = newSearch.ToLower().Split(separator);
            List<Element> collection = new List<Element>();
            List<Element> list2 = new List<Element>();
            foreach (Element element in this.m_Tree)
            {
                if (searchMode != 0)
                {
                    string str = element.m_Parameter.type.ToString();
                    SearchMode mode = (SearchMode) searchMode;
                    if (str != mode.ToString())
                    {
                        continue;
                    }
                }
                string str2 = element.name.ToLower().Replace(" ", "");
                bool flag = true;
                bool flag2 = false;
                for (int i = 0; i < strArray.Length; i++)
                {
                    string str3 = strArray[i];
                    if (str2.Contains(str3))
                    {
                        if ((i == 0) && str2.StartsWith(str3))
                        {
                            flag2 = true;
                        }
                    }
                    else
                    {
                        flag = false;
                        break;
                    }
                }
                if (flag)
                {
                    if (flag2)
                    {
                        collection.Add(element);
                    }
                    else
                    {
                        list2.Add(element);
                    }
                }
            }
            collection.Sort();
            list2.Sort();
            List<Element> list3 = new List<Element>();
            list3.AddRange(collection);
            list3.AddRange(list2);
            this.m_SearchTree = list3.ToArray();
        }