コード例 #1
0
ファイル: ConditionVisitor.cs プロジェクト: rbaarda/Cmsql
 public override CmsqlQueryCondition VisitCondition(CmsqlParser.ConditionContext context)
 {
     return(new CmsqlQueryCondition
     {
         Operator = GetEqualityOperator(context.op.Type),
         Identifier = context.IDENTIFIER().GetText(),
         Value = context.LITERAL().GetText().Trim('\'')
     });
 }
コード例 #2
0
ファイル: ConditionVisitorTest.cs プロジェクト: rbaarda/Cmsql
        public void Test_can_parse_less_than_or_equals_condition()
        {
            CmsqlParser cmsqlParser = CmsqlParserFactory.CreateParserForQuery("foo <= 'bar'");

            CmsqlParser.ConditionContext parseTree = cmsqlParser.condition();

            ConditionVisitor    visitor   = new ConditionVisitor();
            CmsqlQueryCondition condition = visitor.VisitCondition(parseTree);

            condition.Identifier.ShouldBeEquivalentTo("foo");
            condition.Operator.ShouldBeEquivalentTo(EqualityOperator.LessThanOrEquals);
            condition.Value.ShouldBeEquivalentTo("bar");
        }