linc 0.7
Linc is a general-purpose programming language inspired by C
Loading...
Searching...
No Matches
linc::VariableDeclaration Class Referencefinal
Inheritance diagram for linc::VariableDeclaration:
linc::Declaration linc::Node

Classes

class  ValueAssignment
 

Public Member Functions

 VariableDeclaration (const Token &type_specifier, std::unique_ptr< const TypeExpression > type, std::unique_ptr< const IdentifierExpression > identifier, std::optional< ValueAssignment > default_value)
 
virtual std::unique_ptr< const Declarationclone () const final override
 
const TokengetTypeSpecifier () const
 
const TypeExpression *const getType () const
 
const IdentifierExpression *const getIdentifier () const
 
const std::optional< ValueAssignment > & getDefaultValue () const
 
- Public Member Functions inherited from linc::Declaration
 Declaration (NodeInfo info=NodeInfo{})
 
 Declaration (const Token::Info &token_info)
 
- Public Member Functions inherited from linc::Node
 Node (const NodeInfo &info)
 
 Node (const Token::Info &token_info)
 
const Token::InfogetTokenInfo () const
 
const std::vector< Token > & getTokens () const
 
const NodeInfogetInfo () const
 
std::string getInfoString () const
 
void setLineNumber (size_t line_number) const
 
void setTokens (std::vector< Token > tokens) const
 
void addToken (const Token &token) const
 
void addTokens (const std::vector< Token > &tokens) const
 
std::unique_ptr< const Nodeclone () const
 

Member Function Documentation

◆ clone()

virtual std::unique_ptr< const Declaration > linc::VariableDeclaration::clone ( ) const
inlinefinaloverridevirtual

Implements linc::Declaration.


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