caseInsensitive() public method

public caseInsensitive ( ) : bool
return bool
Ejemplo n.º 1
0
        public Map map(Func f)
        {
            Type r = f.returns();

            if (r == Sys.VoidType)
            {
                r = Sys.ObjType.toNullable();
            }
            Map acc = new Map(m_type.m_k, r);

            if (this.ordered())
            {
                acc.ordered(true);
            }
            if (this.caseInsensitive())
            {
                acc.caseInsensitive(true);
            }
            IDictionaryEnumerator en = m_map.GetEnumerator();

            while (en.MoveNext())
            {
                object key = en.Key;
                object val = en.Value;
                acc.set(key, f.call(val, key));
            }
            return(acc);
        }
Ejemplo n.º 2
0
        private static Map initVars()
        {
            Map vars = new Map(Sys.StrType, Sys.StrType);

            try
            {
                vars.caseInsensitive(true);

                // predefined
                vars.set("os.name", Environment.OSVersion.Platform.ToString());
                vars.set("os.version", Environment.OSVersion.Version.ToString());

                // environment variables
                IDictionary getenv = Environment.GetEnvironmentVariables();
                foreach (DictionaryEntry de in getenv)
                {
                    string key = (string)de.Key;
                    string val = (string)de.Value;
                    vars.set(key, val);
                }
            }
            catch (Exception e)
            {
                Err.dumpStack(e);
            }
            return((Map)vars.toImmutable());
        }
Ejemplo n.º 3
0
        public Map exclude(Func f)
        {
            Map acc = new Map(m_type);

            if (this.ordered())
            {
                acc.ordered(true);
            }
            if (this.caseInsensitive())
            {
                acc.caseInsensitive(true);
            }
            IDictionaryEnumerator en = m_map.GetEnumerator();

            while (en.MoveNext())
            {
                object key = en.Key;
                object val = en.Value;
                if (f.call(val, key) == Boolean.False)
                {
                    acc.set(key, val);
                }
            }
            return(acc);
        }
Ejemplo n.º 4
0
        //////////////////////////////////////////////////////////////////////////
        // Lazy Load
        //////////////////////////////////////////////////////////////////////////

        internal static Map emptyParams()
        {
            Map q = m_emptyQuery;

            if (q == null)
            {
                q = new Map(Sys.StrType, Sys.StrType);
                q.caseInsensitive(true);
                q            = (Map)q.toImmutable();
                m_emptyQuery = q;
            }
            return(q);
        }
Ejemplo n.º 5
0
Archivo: Map.cs Proyecto: nomit007/f4
 public Map map(Func f)
 {
     Type r = f.returns();
       if (r == Sys.VoidType) r = Sys.ObjType.toNullable();
       Map acc = new Map(m_type.m_k, r);
       if (this.ordered()) acc.ordered(true);
       if (this.caseInsensitive()) acc.caseInsensitive(true);
       IDictionaryEnumerator en = m_map.GetEnumerator();
       while (en.MoveNext())
       {
     object key = en.Key;
     object val = en.Value;
     acc.set(key, f.call(val, key));
       }
       return acc;
 }
Ejemplo n.º 6
0
Archivo: Map.cs Proyecto: nomit007/f4
 public Map findAll(Func f)
 {
     Map acc = new Map(m_type);
       if (this.ordered()) acc.ordered(true);
       if (this.caseInsensitive()) acc.caseInsensitive(true);
       IDictionaryEnumerator en = m_map.GetEnumerator();
       while (en.MoveNext())
       {
     object key = en.Key;
     object val = en.Value;
     if (f.call(val, key) == Boolean.True)
       acc.set(key, val);
       }
       return acc;
 }
Ejemplo n.º 7
0
        private static Map initVars()
        {
            Map vars = new Map(Sys.StrType, Sys.StrType);
              try
              {
            vars.caseInsensitive(true);

            // predefined
            vars.set("os.name", Environment.OSVersion.Platform.ToString());
            vars.set("os.version", Environment.OSVersion.Version.ToString());

            // environment variables
            IDictionary getenv = Environment.GetEnvironmentVariables();
            foreach (DictionaryEntry de in getenv)
            {
              string key = (string)de.Key;
              string val = (string)de.Value;
              vars.set(key, val);
            }
              }
              catch (Exception e)
              {
            Err.dumpStack(e);
              }
              return (Map)vars.toImmutable();
        }
Ejemplo n.º 8
0
Archivo: MimeType.cs Proyecto: xored/f4
        private static Map doParseParams(string s, int offset)
        {
            Map pars = new Map(Sys.StrType, Sys.StrType);
              pars.caseInsensitive(true);
              bool inQuotes = false;
              int keyStart = offset;
              int valStart = -1;
              int valEnd   = -1;
              int eq       = -1;
              bool hasEsc  = false;
              for (int i = keyStart; i<s.Length; ++i)
              {
            int c = s[i];

            // let parens slide since sometimes they occur in cookies
            // if (c == '(' && !inQuotes)
            //   throw ParseErr.make("MimeType", s, "comments not supported");

            if (c == '=' && !inQuotes && valStart < 0)
            {
              eq = i++;
              while (FanInt.isSpace(s[i])) ++i;
              if (s[i] == '"') { inQuotes = true; ++i; c=s[i]; }
              else inQuotes = false;
              valStart = i;
            }

            if (eq < 0) continue;

            if (c == '\\' && inQuotes)
            {
              ++i;
              hasEsc = true;
              continue;
            }

            if (c == '"' && inQuotes)
            {
              valEnd = i-1;
              inQuotes = false;
            }

            if (c == ';' && !inQuotes)
            {
              if (valEnd < 0) valEnd = i-1;
              string key = s.Substring(keyStart, eq-keyStart).Trim();
              string val = s.Substring(valStart, valEnd+1-valStart).Trim();
              if (hasEsc) val = unescape(val);
              pars.set(key, val);
              keyStart = i+1;
              eq = valStart = valEnd = -1;
              hasEsc = false;
            }
              }

              if (keyStart < s.Length)
              {
            if (valEnd < 0) valEnd = s.Length-1;
            string key = s.Substring(keyStart, eq-keyStart).Trim();
            string val = s.Substring(valStart, valEnd+1-valStart).Trim();
            if (hasEsc) val = unescape(val);
            pars.set(key, val);
              }

              return pars;
        }
Ejemplo n.º 9
0
Archivo: MimeType.cs Proyecto: xored/f4
 //////////////////////////////////////////////////////////////////////////
 // Lazy Load
 //////////////////////////////////////////////////////////////////////////
 internal static Map emptyParams()
 {
     Map q = m_emptyQuery;
       if (q == null)
       {
     q = new Map(Sys.StrType, Sys.StrType);
     q.caseInsensitive(true);
     q = (Map)q.toImmutable();
     m_emptyQuery = q;
       }
       return q;
 }
Ejemplo n.º 10
0
        private static Map doParseParams(string s, int offset)
        {
            Map pars = new Map(Sys.StrType, Sys.StrType);

            pars.caseInsensitive(true);
            bool inQuotes = false;
            int  keyStart = offset;
            int  valStart = -1;
            int  valEnd   = -1;
            int  eq       = -1;
            bool hasEsc   = false;

            for (int i = keyStart; i < s.Length; ++i)
            {
                int c = s[i];

                // let parens slide since sometimes they occur in cookies
                // if (c == '(' && !inQuotes)
                //   throw ParseErr.make("MimeType", s, "comments not supported");

                if (c == '=' && !inQuotes && valStart < 0)
                {
                    eq = i++;
                    while (FanInt.isSpace(s[i]))
                    {
                        ++i;
                    }
                    if (s[i] == '"')
                    {
                        inQuotes = true; ++i; c = s[i];
                    }
                    else
                    {
                        inQuotes = false;
                    }
                    valStart = i;
                }

                if (eq < 0)
                {
                    continue;
                }

                if (c == '\\' && inQuotes)
                {
                    ++i;
                    hasEsc = true;
                    continue;
                }

                if (c == '"' && inQuotes)
                {
                    valEnd   = i - 1;
                    inQuotes = false;
                }

                if (c == ';' && !inQuotes)
                {
                    if (valEnd < 0)
                    {
                        valEnd = i - 1;
                    }
                    string key = s.Substring(keyStart, eq - keyStart).Trim();
                    string val = s.Substring(valStart, valEnd + 1 - valStart).Trim();
                    if (hasEsc)
                    {
                        val = unescape(val);
                    }
                    pars.set(key, val);
                    keyStart = i + 1;
                    eq       = valStart = valEnd = -1;
                    hasEsc   = false;
                }
            }

            if (keyStart < s.Length)
            {
                if (valEnd < 0)
                {
                    valEnd = s.Length - 1;
                }
                string key = s.Substring(keyStart, eq - keyStart).Trim();
                string val = s.Substring(valStart, valEnd + 1 - valStart).Trim();
                if (hasEsc)
                {
                    val = unescape(val);
                }
                pars.set(key, val);
            }

            return(pars);
        }