コード例 #1
0
ファイル: AST.cs プロジェクト: s152b/.NET-Design-Patterns
        /// <summary>
        ///     While evaluating a numeric constant , return the _value
        /// </summary>
        /// <param name="cont"></param>
        /// <returns></returns>
        public override double Evaluate(RUNTIME_CONTEXT cont)
        {
            switch (_op)
            {
            case OPERATOR.PLUS:
                return(_ex1.Evaluate(cont));

            case OPERATOR.MINUS:
                return(-_ex1.Evaluate(cont));
            }

            return(Double.NaN);
        }
コード例 #2
0
ファイル: AST.cs プロジェクト: s152b/.NET-Design-Patterns
        /// <summary>
        ///     While evaluating a numeric constant , return the _value
        /// </summary>
        /// <param name="cont"></param>
        /// <returns></returns>
        public override double Evaluate(RUNTIME_CONTEXT cont)
        {
            double val = cont.T;

            return(val);
        }
コード例 #3
0
ファイル: AST.cs プロジェクト: s152b/.NET-Design-Patterns
        /// <summary>
        ///     While evaluating a numeric constant , return the _value
        /// </summary>
        /// <param name="cont"></param>
        /// <returns></returns>
        public override double Evaluate(RUNTIME_CONTEXT cont)
        {
            double val = _ex1.Evaluate(cont);

            return(Math.Cos(val));
        }