public override void CaseAArrayTempType(AArrayTempType node)
 {
     InAArrayTempType(node);
     if (node.GetIntDim() != null)
     {
         node.GetIntDim().Apply(this);
     }
     if (node.GetDimention() != null)
     {
         node.GetDimention().Apply(this);
     }
     if (node.GetType() != null)
     {
         node.GetType().Apply(this);
     }
     if (node.GetToken() != null)
     {
         node.GetToken().Apply(this);
     }
     OutAArrayTempType(node);
 }
        public override void CaseAArrayTempType(AArrayTempType node)
        {
            /*if (node.GetDimention() is ALvalueExp && ((ALvalueExp)node.GetDimention()).GetLvalue() is AAmbiguousNameLvalue)
            {
                AAmbiguousNameLvalue lvalue = (AAmbiguousNameLvalue) ((ALvalueExp) node.GetDimention()).GetLvalue();
                ASimpleName name = (ASimpleName) lvalue.GetAmbiguous();
                if (name.GetIdentifier().Text == "PlayerData")
                    node = node;
            }*/
            if (!isInANewExp && !data.IsLiteCompile)
            {
                bool wasFolding = foldIntegerConstants;
                bool foldFailedBefore = foldingFailed;

                foldIntegerConstants = true;
                foldingFailed = false;
                integerConstant = 0;
                integerConstantToken = node.GetToken();
                CheckValidConstExp(node.GetDimention());
                base.CaseAArrayTempType(node);
                foldIntegerConstants = false;
                if (!foldingFailed)
                    node.SetIntDim(new TIntegerLiteral(integerConstant.ToString()));

                foldIntegerConstants = wasFolding;
                foldingFailed = foldFailedBefore;

            }
            else
            {
                base.CaseAArrayTempType(node);
            }
        }