souffle  2.0.2-371-g6315b36
Public Member Functions | Private Attributes
souffle::ast::Type Class Referenceabstract

An abstract base class for types. More...

#include <Type.h>

Inheritance diagram for souffle::ast::Type:
Inheritance graph
Collaboration diagram for souffle::ast::Type:
Collaboration graph

Public Member Functions

Typeclone () const override=0
 Create a clone (i.e. More...
 
const QualifiedNamegetQualifiedName () const
 Return type name. More...
 
void setQualifiedName (QualifiedName name)
 Set type name. More...
 
 Type (QualifiedName name={}, SrcLocation loc={})
 
- Public Member Functions inherited from souffle::ast::Node
virtual void apply (const NodeMapper &)
 Apply the mapper to all child nodes. More...
 
std::string extloc () const
 Return source location of the syntactic element. More...
 
virtual std::vector< const Node * > getChildNodes () const
 Obtain a list of all embedded AST child nodes. More...
 
const SrcLocationgetSrcLoc () const
 Return source location of the Node. More...
 
 Node (SrcLocation loc={})
 
bool operator!= (const Node &other) const
 Inequality check for two AST nodes. More...
 
bool operator== (const Node &other) const
 Equivalence check for two AST nodes. More...
 
void setSrcLoc (SrcLocation l)
 Set source location for the Node. More...
 
virtual ~Node ()=default
 

Private Attributes

QualifiedName name
 type name More...
 

Additional Inherited Members

- Protected Member Functions inherited from souffle::ast::Node
virtual bool equal (const Node &) const
 Abstract equality check for two AST nodes. More...
 
virtual void print (std::ostream &os) const =0
 Output to a given output stream. More...
 

Detailed Description

An abstract base class for types.

Definition at line 37 of file Type.h.

Constructor & Destructor Documentation

◆ Type()

souffle::ast::Type::Type ( QualifiedName  name = {},
SrcLocation  loc = {} 
)
inline

Definition at line 39 of file Type.h.

41 {

References setQualifiedName().

Here is the call graph for this function:

Member Function Documentation

◆ clone()

Type* souffle::ast::Type::clone ( ) const
overridepure virtual

Create a clone (i.e.

deep copy) of this node

Implements souffle::ast::Node.

◆ getQualifiedName()

const QualifiedName& souffle::ast::Type::getQualifiedName ( ) const
inline

Return type name.

Definition at line 42 of file Type.h.

47  :
48  /** type name */

◆ setQualifiedName()

void souffle::ast::Type::setQualifiedName ( QualifiedName  name)
inline

Set type name.

Definition at line 47 of file Type.h.

47  :
48  /** type name */
49  QualifiedName name;

Referenced by Type().

Field Documentation

◆ name

QualifiedName souffle::ast::Type::name
private

type name

Definition at line 55 of file Type.h.


The documentation for this class was generated from the following file:
souffle::ast::analysis::Type::name
QualifiedName name
Definition: TypeSystem.h:92