Class Generic

Inheritance Relationships

Derived Types

Class Documentation

class seq::Generic

Generic object abstraction for representing generic functions, methods, classes, etc.

Subclassed by seq::Func, seq::types::RefType

Public Functions

Generic()
std::string genericName() = 0
Generic *clone(Generic *ref) = 0
void addCachedRealized(std::vector<types::Type*> types, Generic *x)
bool realized()
std::vector<types::Type*> getRealizedTypes() const
bool is(Generic *other) const
void setCloneBase(Generic *x, Generic *ref)
void addGenerics(int count)
unsigned numGenerics() const
types::GenericType *getGeneric(int idx) const
bool seenClone(void *p)
void *getClone(void *p)
void addClone(void *p, void *clone)
Generic *realizeGeneric(std::vector<types::Type*> types)
std::vector<types::Type*> deduceTypesFromArgTypes(const std::vector<types::Type*> &inTypes, const std::vector<types::Type*> &argTypes, bool unwrapOptionals = true)