Ejemplo n.º 1
0
        public void GetAndEvaluateNilExpression()
        {
            NilExpression expression = NilExpression.Instance;

            Assert.IsNotNull(expression);

            Machine machine = new Machine();

            expression.Evaluate(machine);

            Assert.AreEqual(1, machine.StackCount);
            Assert.IsInstanceOfType(machine.Top(), typeof(IList));

            IList list = (IList)machine.Pop();

            Assert.IsNotNull(list);
            Assert.AreEqual(0, list.Count);
        }
Ejemplo n.º 2
0
 protected virtual ASTNode FoldNilExpression(NilExpression node, params Object[] args)
 {
     return(node);
 }
Ejemplo n.º 3
0
 protected virtual Object[] AnalyseNilExpression(NilExpression node, params Object[] args)
 {
     return(null);
 }
Ejemplo n.º 4
0
 void PrintExpression(NilExpression e, int d)
 {
     Say("NilExpression()");
 }
Ejemplo n.º 5
0
 void PrintExpression(NilExpression e, int d)
 {
     Say("NilExpression()");
 }
Ejemplo n.º 6
0
 ExpressionType TranslateExpression(NilExpression e)
 {
     return(new ExpressionType(Translate.TranslateNilExp(), Types.Type._nil));
 }
Ejemplo n.º 7
0
 public abstract void ConstructNilExpression(NilExpression node);
Ejemplo n.º 8
0
 public override void ConstructNilExpression(NilExpression node)
 {
     this.Write("nil");
 }