Esempio n. 1
0
        public override Yarn.Type VisitExpComparison(YarnSpinnerParser.ExpComparisonContext context)
        {
            ParserRuleContext[] terms = context.expression();

            // <, <=, >, >= all support numbers only
            CheckOperation(context, terms, context.op.Text, Yarn.Type.Number);

            // Comparisons always return bool
            return(Yarn.Type.Bool);
        }
Esempio n. 2
0
        public override Yarn.IType VisitExpComparison(YarnSpinnerParser.ExpComparisonContext context)
        {
            ParserRuleContext[] terms = context.expression();

            var @operator = CodeGenerationVisitor.TokensToOperators[context.op.Type];

            var type = CheckOperation(context, terms, @operator, context.op.Text);

            context.Type = type;

            // Comparisons always return bool
            return(BuiltinTypes.Boolean);
        }
Esempio n. 3
0
        // < <= > >=
        public override int VisitExpComparison(YarnSpinnerParser.ExpComparisonContext context)
        {
            genericExpVisitor(context.expression(0), context.expression(1), context.op.Type);

            return(0);
        }
Esempio n. 4
0
        // < <= > >=
        public override int VisitExpComparison(YarnSpinnerParser.ExpComparisonContext context)
        {
            this.GenerateCodeForOperation(TokensToOperators[context.op.Type], context.op, context.Type, context.expression(0), context.expression(1));

            return(0);
        }