Exemplo n.º 1
0
        public override string EvalArray(MoccaArray codeBase)
        {
            string ret = "[";

            foreach (object i in codeBase.value)
            {
                ret += EvalAtom(i) + ", ";
            }
            ret = ret.Substring(0, ret.Length - 2) + "]";
            return(ret);
        }
Exemplo n.º 2
0
            /*
             * [ Param ]
             * returns MoccaArray
             */
            public virtual object EvalArray(ParseTree tree, params object[] paramlist)
            {
                List <object> param     = (List <object>) this.GetValue(tree, TokenType.Param, 0);
                List <object> variables = new List <object>();

                foreach (var i in param)
                {
                    Type cursor = i.GetType();
                    if (cursor.Equals(typeof(string)))
                    {
                        variables.Add(new MoccaVariable()
                        {
                            name = "__none", value = i, type = MoccaType.STRING
                        });
                    }
                    else if (cursor.Equals(typeof(float)))
                    {
                        variables.Add(new MoccaVariable()
                        {
                            name = "__none", value = i, type = MoccaType.NUMBER
                        });
                    }
                    else if (cursor.Equals(typeof(MoccaArray)))
                    {
                        variables.Add((MoccaArray)i);
                    }
                    else if (cursor.Equals(typeof(MoccaDictionary)))
                    {
                        variables.Add((MoccaDictionary)i);
                    }
                    else if (cursor.Equals(typeof(MoccaCommand)))
                    {
                        variables.Add((MoccaCommand)i);
                    }
                    else
                    {
                        // TODO: Throws MoccaException when i is not compromised with Mocca
                        // For now just pass away
                        variables.Add(i);
                    }
                }

                MoccaArray ret = new MoccaArray();

                ret.name  = "__ready";
                ret.value = param;
                return(ret);
            }
Exemplo n.º 3
0
 public abstract string EvalArray(MoccaArray codeBase);