コード例 #1
0
        ///////////////////////////////////////////////////////////
        public BasicQuantifiedExpression(
            QuantifiedExpression other,
            ExpressionSubstitution s
            )
        {
            scope      = other.scope;
            quantifier = other.quantifier;
            variable   = scope.makeFreshBoundVariable(other.variable.name,
                                                      other.variable.type.substitute(s.typeSubstitution));
            s.add(other.variable.name, new BasicBoundVariableExpression(variable));
            expression = other.expression.substitute(s);
            triggers   = (from trs in other.triggers select trs.substitute(s)).ToArray();
            if (other.attributes != null)
            {
                attributes = (string)(other.attributes.Clone());
            }

            s.remove(other.variable.name);
        }