public override bool Visit(IndexAccess access)
        {
            if (access.BaseExpression.ToString().Equals("msg.data"))
            {
                return(false);
            }

            DeclarationFinder   declFinder = new DeclarationFinder(access, solidityAST);
            VariableDeclaration decl       = declFinder.getDecl();

            if (results.Contains(decl))
            {
                int numAccesses  = declFinder.getNumAccesses();
                int numIndexDims = getIndexDimSize(decl.TypeName);

                if (numIndexDims != numAccesses)
                {
                    results.Remove(decl);
                }
            }

            return(false);
        }
Exemple #2
0
        public VariableDeclaration getDecl(Expression access)
        {
            DeclarationFinder declFinder = new DeclarationFinder(access, solidityAst);

            return(declFinder.getDecl());
        }