Example #1
0
        private static ValorArreglo getValorArreglo(Arreglo array)
        {
            ValorArreglo v_array = new ValorArreglo();
            v_array.valor = new List<Valor>();

            if (array.tipoArreglo is Arreglo)
            {
                for (int x = 0; x < array.size; x++)
                {
                    ValorArreglo v_subarray = getValorArreglo((Arreglo)array.tipoArreglo);
                    v_array.valor.Add(v_subarray);
                }
            }
            else
            {
                for (int x = 0; x < array.size; x++)
                {
                    Valor v = getDefaultValue(array.tipoArreglo);
                    v_array.valor.Add(v);
                }
            }
            return v_array;
        }
Example #2
0
        public override Valor interpretar()
        {
            ValorArreglo vArray = new ValorArreglo();
            vArray.valor = new List<Valor>();

            foreach (Initializers vinit in initializerList)
            {

                if (vinit is VariableInitializer)
                {
                    VariableInitializer vInitializer = (VariableInitializer)vinit;
                    Valor valorArreglo = vInitializer.interpretar();

                    vArray.valor.Add(valorArreglo);
                }
                else
                {
                    VariableInitializerList vList = (VariableInitializerList)vinit;
                    ValorArreglo vSubArray = new ValorArreglo();
                    vSubArray.valor = new List<Valor>();

                    foreach (Initializers vinit2 in vList.initializerList)
                    {
                        Valor valorArreglo = vinit2.interpretar();
                        vSubArray.valor.Add(valorArreglo);
                    }
                    vArray.valor.Add(vSubArray);
                }
            }
            return vArray;
        }
Example #3
0
 public override Valor clone()
 {
     ValorArreglo v_array = new ValorArreglo();
     v_array.valor = valor;
     return v_array;
 }