Exemple #1
0
        /// <summary>
        ///     first token must be
        ///     <see cref="MySqlToken.SysVar" />
        /// </summary>
        /// <exception cref="System.SqlSyntaxErrorException" />
        public virtual SysVarPrimary SystemVariale()
        {
            SysVarPrimary sys;
            var           scope = VariableScope.Session;
            var           str   = lexer.GetStringValue();
            var           strUp = lexer.GetStringValueUppercase();

            Match(MySqlToken.SysVar);
            var si = specialIdentifiers.GetValue(strUp);

            if (si != SpecialIdentifier.None)
            {
                switch (si)
                {
                case SpecialIdentifier.Global:
                {
                    scope = VariableScope.Global;
                    goto case SpecialIdentifier.Session;
                }

                case SpecialIdentifier.Session:
                case SpecialIdentifier.Local:
                {
                    Match(MySqlToken.PuncDot);
                    str   = lexer.GetStringValue();
                    strUp = lexer.GetStringValueUppercase();
                    Match(MySqlToken.Identifier);
                    sys = new SysVarPrimary(scope, str, strUp);
                    sys.SetCacheEvalRst(cacheEvalRst);
                    return(sys);
                }
                }
            }
            sys = new SysVarPrimary(scope, str, strUp);
            sys.SetCacheEvalRst(cacheEvalRst);
            return(sys);
        }
Exemple #2
0
 public virtual void Visit(SysVarPrimary node)
 {
 }
Exemple #3
0
 public void Visit(SysVarPrimary node)
 {
 }