A type that represents an ordered sequence. More...
#include <MaybeType.h>
 
  
 | Public Member Functions | |
| const Type & | elementType () const | 
| virtual TypeMap | fields () const override | 
| The fields that objects of this type have.  More... | |
| virtual bool | hasFields () const override | 
| virtual bool | isOptional () const override | 
| virtual bool | isSubtype (const Type &) const override | 
|  Public Member Functions inherited from fabrique::Type | |
| Type (std::weak_ptr< Type > parent)=delete | |
| TypeContext & | context () const | 
| virtual const std::string | name () const | 
| virtual void | PrettyPrint (Bytestream &, size_t indent=0) const override | 
| Print a human-readable representation to an output stream and return that output stream. | |
| bool | operator== (const Type &) const | 
| bool | operator!= (const Type &t) const | 
| const PtrVec< Type > & | typeParameters () const | 
| size_t | typeParamCount () const | 
| const Type & | operator[] (size_t i) const | 
| const Type & | Map (TypesMapper, const SourceRange &) const | 
| virtual bool | isSupertype (const Type &) const | 
| operator bool () const | |
| virtual bool | valid () const | 
| virtual bool | isFile () const | 
| virtual bool | isFunction () const | 
| virtual bool | isString () const | 
| virtual bool | isOrdered () const | 
| virtual bool | canBeNegated () const | 
| virtual const Type & | onAddTo (const Type &) const | 
| virtual const Type & | onPrefixWith (const Type &) const | 
|  Public Member Functions inherited from fabrique::Printable | |
| Printable (const Printable &) | |
| Printable & | operator= (const Printable &) | 
| virtual std::string | str () const | 
| Protected Member Functions | |
| MaybeType (const Type &elementTy) | |
|  Protected Member Functions inherited from fabrique::Type | |
| Type (const std::string &, const PtrVec< Type > ¶ms, TypeContext &) | |
| virtual Type * | Parameterise (const PtrVec< Type > &, const SourceRange &) const | 
| Friends | |
| class | TypeContext | 
| class | RawMaybeType | 
| Additional Inherited Members | |
|  Public Types inherited from fabrique::Type | |
| typedef std::pair< std::string, const Type & > | NamedType | 
| typedef std::vector< NamedType > | NamedTypeVec | 
| typedef StringMap< const Type & > | TypeMap | 
| typedef std::function< PtrVec < Type >const PtrVec< Type > &)> | TypesMapper | 
|  Static Public Member Functions inherited from fabrique::Type | |
| static const Type & | GetSupertype (const Type &, const Type &) | 
| static const Type & | ListOf (const Type &, const SourceRange &) | 
| static std::string | UntypedPart (std::string typedName) | 
A type that represents an ordered sequence.
Definition at line 43 of file MaybeType.h.
| 
 | overridevirtual | 
The fields that objects of this type have.
This can be empty even if hasFields() is true: objects like this one might not happen to have fields while still being the kind of objects that, in general, do (e.g., a struct like args with no members).
Reimplemented from fabrique::Type.
Definition at line 54 of file MaybeType.cc.
References fabrique::TypeContext::booleanType().