public static MyError IncDecNonRefError(AstNode node, IncDecOperator op)
            {
                MyError error = new MyError(node.Span.Location.Line,
                                            node.Span.Location.Column,
                                            node.NodePath.StringValue,
                                            "No se puede hacer la operacion:" + op.ToStringSymbol() + " a un tipo no referencia",
                                            MyError.ErrorType.Semantic,
                                            MyError.ErrorLevel.Fatal);

                AddError(error);
                return(error);
            }
        public static string ToStringSymbol(this IncDecOperator op)
        {
            switch (op)
            {
            case IncDecOperator.MinusMinus:
                return("--");

            case IncDecOperator.PlusPlus:
                return("++");

            default:
                throw new Exception("Operador: " + op.ToString() + " no se puede pasar a symbolString");
            }
        }
            public static MyError IncDecError(AstNode node, IncDecOperator op, Word word)
            {
                string type;

                if (word.IsError())
                {
                    type = word.GetType().Name;
                }
                else
                {
                    type = TypeConstants.GetMyTypeName(((PyObj)word).GetMyType());
                }
                MyError error = new MyError(node.Span.Location.Line,
                                            node.Span.Location.Column,
                                            node.NodePath.StringValue,
                                            "No se puede hacer " + op.ToStringSymbol() + " con un tipo: " + type,
                                            MyError.ErrorType.Semantic,
                                            MyError.ErrorLevel.Fatal);

                AddError(error);
                return(error);
            }
 public override string DotLabel()
 {
     return(Graphviz.DotUtilities.BuildDotLabel(this.GetType().Name, IncDecOperator.ToStringSymbol()));
 }