klee
klee::expr::ArrayDecl Class Reference

#include <Parser.h>

Inheritance diagram for klee::expr::ArrayDecl:
Collaboration diagram for klee::expr::ArrayDecl:

Public Member Functions

 ArrayDecl (const Identifier *_Name, uint64_t _Size, unsigned _Domain, unsigned _Range, const Array *_Root)
 
virtual void dump ()
 dump - Dump the AST node to stderr. More...
 
- Public Member Functions inherited from klee::expr::Decl
 Decl (DeclKind _Kind)
 
virtual ~Decl ()
 
DeclKind getKind () const
 getKind - Get the decl kind. More...
 
virtual void dump ()=0
 dump - Dump the AST node to stderr. More...
 

Static Public Member Functions

static bool classof (const Decl *D)
 
static bool classof (const ArrayDecl *)
 
- Static Public Member Functions inherited from klee::expr::Decl
static bool classof (const Decl *)
 

Public Attributes

const IdentifierName
 Name - The name of this array. More...
 
const unsigned Domain
 Domain - The width of indices. More...
 
const unsigned Range
 Range - The width of array contents. More...
 
const ArrayRoot
 Root - The root array object defined by this decl. More...
 

Additional Inherited Members

- Public Types inherited from klee::expr::Decl
enum  DeclKind {
  ArrayDeclKind , ExprVarDeclKind , VersionVarDeclKind , QueryCommandDeclKind ,
  DeclKindLast = QueryCommandDeclKind , VarDeclKindFirst = ExprVarDeclKind , VarDeclKindLast = VersionVarDeclKind , CommandDeclKindFirst = QueryCommandDeclKind ,
  CommandDeclKindLast = QueryCommandDeclKind
}
 

Detailed Description

ArrayDecl - Array declarations.

For example: array obj[] : w32 -> w8 = symbolic array obj[32] : w32 -> w8 = [ ... ]

Definition at line 77 of file Parser.h.

Constructor & Destructor Documentation

◆ ArrayDecl()

klee::expr::ArrayDecl::ArrayDecl ( const Identifier _Name,
uint64_t  _Size,
unsigned  _Domain,
unsigned  _Range,
const Array _Root 
)
inline

Definition at line 92 of file Parser.h.

Member Function Documentation

◆ classof() [1/2]

static bool klee::expr::ArrayDecl::classof ( const ArrayDecl )
inlinestatic

Definition at line 105 of file Parser.h.

◆ classof() [2/2]

static bool klee::expr::ArrayDecl::classof ( const Decl D)
inlinestatic

Definition at line 102 of file Parser.h.

References klee::expr::Decl::ArrayDeclKind, and klee::expr::Decl::getKind().

Here is the call graph for this function:

◆ dump()

void ArrayDecl::dump ( )
virtual

dump - Dump the AST node to stderr.

Implements klee::expr::Decl.

Definition at line 1606 of file Parser.cpp.

References klee::Array::constantValues, Domain, klee::Array::isSymbolicArray(), klee::Array::name, Range, Root, and klee::Array::size.

Here is the call graph for this function:

Member Data Documentation

◆ Domain

const unsigned klee::expr::ArrayDecl::Domain

Domain - The width of indices.

Definition at line 83 of file Parser.h.

Referenced by dump().

◆ Name

const Identifier* klee::expr::ArrayDecl::Name

Name - The name of this array.

Definition at line 80 of file Parser.h.

◆ Range

const unsigned klee::expr::ArrayDecl::Range

Range - The width of array contents.

Definition at line 86 of file Parser.h.

Referenced by dump().

◆ Root

const Array* klee::expr::ArrayDecl::Root

Root - The root array object defined by this decl.

Definition at line 89 of file Parser.h.

Referenced by dump().


The documentation for this class was generated from the following files: