Пример #1
0
        /// <summary>
        /// expression :
        ///       cursor_expression
        ///     | logical_expression
        ///     | VARIABLE_SESSION
        ///     ;
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public override object VisitExpression([NotNull] PlSqlParser.ExpressionContext context)
        {
            object result = null;

            var cursor_expression = context.cursor_expression();

            if (cursor_expression != null)
            {
                result = this.VisitCursor_expression(cursor_expression);
            }
            else
            {
                var logical_expression = context.logical_expression();
                if (logical_expression != null)
                {
                    result = this.VisitLogical_expression(logical_expression);
                }
                else
                {
                    var variable_session = context.VARIABLE_SESSION();
                    if (variable_session != null)
                    {
                        result = new OCodeVariableReferenceExpression()
                        {
                            Name = variable_session.GetCleanedText()
                        }
                    }
                    ;
                }
            }

            Debug.Assert(result != null);

            return(result);
        }
Пример #2
0
 public void VisitCodeVariableReferenceExpression(OCodeVariableReferenceExpression oCodeVariableReferenceExpression)
 {
     throw new NotImplementedException();
 }
Пример #3
0
 public void VisitCodeVariableReferenceExpression(OCodeVariableReferenceExpression oCodeVariableReferenceExpression)
 {
 }