Static Value-Flow Analysis
Public Member Functions | Static Public Member Functions | Private Attributes | Friends | List of all members
SVF::SVFArgument Class Reference

#include <SVFValue.h>

Inheritance diagram for SVF::SVFArgument:
SVF::SVFValue

Public Member Functions

 SVFArgument (const SVFType *ty, const SVFFunction *fun, u32_t argNo, bool uncalled)
 
 SVFArgument ()=delete
 
const SVFFunctiongetParent () const
 
u32_t getArgNo () const
 
bool isArgOfUncalledFunction () const
 
- Public Member Functions inherited from SVF::SVFValue
 SVFValue ()=delete
 
virtual ~SVFValue ()=default
 
GNodeK getKind () const
 Get the type of this SVFValue. More...
 
const std::stringgetName () const
 
void setName (const std::string &n)
 
void setName (std::string &&n)
 
virtual const SVFTypegetType () const
 
bool isConstDataOrAggData () const
 
bool ptrInUncalledFunction () const
 
bool isblackHole () const
 
bool isNullPtr () const
 
virtual void setSourceLoc (const std::string &sourceCodeInfo)
 
virtual const std::string getSourceLoc () const
 
std::string toString () const
 Needs to be implemented by a SVF front end. More...
 

Static Public Member Functions

static bool classof (const SVFValue *node)
 

Private Attributes

const SVFFunctionfun
 
u32_t argNo
 
bool uncalled
 

Friends

class SVFIRWriter
 
class SVFIRReader
 

Additional Inherited Members

- Public Types inherited from SVF::SVFValue
enum  SVFValKind {
  SVFVal , SVFFunc , SVFBB , SVFInst ,
  SVFCall , SVFVCall , SVFGlob , SVFArg ,
  SVFConst , SVFConstData , SVFConstInt , SVFConstFP ,
  SVFNullPtr , SVFBlackHole , SVFMetaAsValue , SVFOther
}
 
typedef s64_t GNodeK
 
- Protected Member Functions inherited from SVF::SVFValue
 SVFValue (const SVFType *ty, SVFValKind k)
 Constructor without name. More...
 
void setConstDataOrAggData ()
 
void setPtrInUncalledFunction ()
 
- Protected Attributes inherited from SVF::SVFValue
const SVFTypetype
 Type of this SVFValue. More...
 
std::string name
 Short name of value for printing & debugging. More...
 
std::string sourceLoc
 

Detailed Description

Definition at line 862 of file SVFValue.h.

Constructor & Destructor Documentation

◆ SVFArgument() [1/2]

SVF::SVFArgument::SVFArgument ( const SVFType ty,
const SVFFunction fun,
u32_t  argNo,
bool  uncalled 
)
inline

Definition at line 871 of file SVFValue.h.

875  {
876  }
const SVFFunction * fun
Definition: SVFValue.h:867
SVFValue()=delete

◆ SVFArgument() [2/2]

SVF::SVFArgument::SVFArgument ( )
delete

Member Function Documentation

◆ classof()

static bool SVF::SVFArgument::classof ( const SVFValue node)
inlinestatic

Definition at line 896 of file SVFValue.h.

897  {
898  return node->getKind() == SVFArg;
899  }

◆ getArgNo()

u32_t SVF::SVFArgument::getArgNo ( ) const
inline

Return the index of this formal argument in its containing function. For example in "void foo(int a, float b)" a is 0 and b is 1.

Definition at line 886 of file SVFValue.h.

887  {
888  return argNo;
889  }

◆ getParent()

const SVFFunction* SVF::SVFArgument::getParent ( ) const
inline

Definition at line 879 of file SVFValue.h.

880  {
881  return fun;
882  }

◆ isArgOfUncalledFunction()

bool SVF::SVFArgument::isArgOfUncalledFunction ( ) const
inline

Definition at line 891 of file SVFValue.h.

892  {
893  return uncalled;
894  }

Friends And Related Function Documentation

◆ SVFIRReader

friend class SVFIRReader
friend

Definition at line 865 of file SVFValue.h.

◆ SVFIRWriter

friend class SVFIRWriter
friend

Definition at line 864 of file SVFValue.h.

Member Data Documentation

◆ argNo

u32_t SVF::SVFArgument::argNo
private

Definition at line 868 of file SVFValue.h.

◆ fun

const SVFFunction* SVF::SVFArgument::fun
private

Definition at line 867 of file SVFValue.h.

◆ uncalled

bool SVF::SVFArgument::uncalled
private

Definition at line 869 of file SVFValue.h.


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