tipc
A TIP to LLVM compiler
|
Class for free type variables. More...
#include <TipAlpha.h>
Public Member Functions | |
TipAlpha ()=delete | |
TipAlpha (ASTNode *node) | |
Constructor for all non-record nodes. More... | |
TipAlpha (ASTNode *node, std::string const name) | |
Constructor for record or access exprs. More... | |
TipAlpha (ASTNode *node, ASTNode *context, std::string const name) | |
Constructor for creating context specific alphas. More... | |
ASTNode * | getContext () const |
std::string const & | getName () const |
bool | operator== (const TipType &other) const override |
bool | operator!= (const TipType &other) const override |
void | accept (TipTypeVisitor *visitor) override |
![]() | |
TipVar ()=default | |
TipVar (ASTNode *node) | |
bool | operator== (const TipType &other) const override |
bool | operator!= (const TipType &other) const override |
ASTNode * | getNode () const |
void | accept (TipTypeVisitor *visitor) override |
![]() | |
virtual | ~TipType ()=default |
Protected Member Functions | |
std::ostream & | print (std::ostream &out) const override |
![]() | |
std::ostream & | print (std::ostream &out) const override |
Type variables printed as ASTNodecol. More... | |
Protected Attributes | |
ASTNode * | context |
std::string const | name |
![]() | |
ASTNode * | node |
Class for free type variables.
|
delete |
TipAlpha::TipAlpha | ( | ASTNode * | node | ) |
Constructor for all non-record nodes.
node | The expression or decl node |
TipAlpha::TipAlpha | ( | ASTNode * | node, |
std::string const | name | ||
) |
Constructor for record or access exprs.
node | The record or access expr |
name | The field name |
|
overridevirtual |
Implements TipType.
ASTNode * TipAlpha::getContext | ( | ) | const |
std::string const & TipAlpha::getName | ( | ) | const |
|
overrideprotectedvirtual |
Implements TipType.
|
protected |
|
protected |