eRPC Generator (erpcgen)  Rev. 1.12.0
NXP Semiconductors
erpcgen::ListType Class Reference

Variable length list of another data type. More...

#include <ListType.hpp>

Inheritance diagram for erpcgen::ListType:
erpcgen::DataType erpcgen::Symbol

Public Member Functions

 ListType (DataType *elementType)
 Constructor. More...
 
DataTypegetElementType () const
 This function returns element data type. More...
 
void setElementType (DataType *elementType)
 This function set element data type. More...
 
virtual std::string getDescription () const override
 This function returns description about the list. More...
 
void setLengthVariableName (const std::string &lengthVariableName)
 This function set variable name. This variable is used in generated file to store size of list. More...
 
std::string & getLengthVariableName ()
 This function returns variable name. This variable is used in generated file to store size of list. More...
 
bool hasLengthVariable ()
 This function returns information if object contains length variable. More...
 
- Public Member Functions inherited from erpcgen::DataType
 DataType (data_type_t dataType)
 Constructor. More...
 
 DataType (const std::string &name, data_type_t dataType)
 Constructor. More...
 
 DataType (const Token &tok, data_type_t dataType)
 Constructor. More...
 
data_type_t getDataType () const
 This function returns data type. More...
 
DataTypegetTrueDataType ()
 This function returns pointer to true data type instead of alias. More...
 
DataTypegetTrueContainerDataType ()
 This function returns pointer to true data type (enum, builtin, structs) except lists and arrays. More...
 
bool isAlias () const
 This function is testing data type. More...
 
bool isArray () const
 This function is testing data type. More...
 
virtual bool isBinary () const
 This function return "false" value as default for identify binary type. More...
 
virtual bool isBool () const
 This function return "false" value as default for identify bool type. More...
 
bool isBuiltin () const
 This function is testing data type. More...
 
bool isEnum () const
 This function is testing data type. More...
 
bool isFunction () const
 This function is testing data type. More...
 
bool isList () const
 This function is testing data type. More...
 
virtual bool isScalar () const
 This function return "false" value as default for identify scalar builtin type. More...
 
virtual bool isInt () const
 This function return "true" value for identify int type. More...
 
virtual bool isFloat () const
 This function return "true" value for identify float type. More...
 
virtual bool isString () const
 This function return "false" value as default for identify string type. More...
 
virtual bool isUString () const
 This function return "false" value as default for identify ustring type. More...
 
bool isStruct () const
 This function is testing data type. More...
 
bool isUnion () const
 This function is testing data type. More...
 
bool isVoid () const
 This function is testing data type. More...
 
- Public Member Functions inherited from erpcgen::Symbol
 Symbol (symbol_type_t symType)
 Constructor. More...
 
 Symbol (symbol_type_t symType, const std::string &name)
 Constructor. More...
 
 Symbol (symbol_type_t symType, const Token &tok)
 Constructor. More...
 
virtual ~Symbol ()
 Destructor.
 
symbol_type_t getSymbolType () const
 This function returns symbol type. More...
 
const std::string & getName () const
 This function returns symbol name. More...
 
void setName (const std::string &newName)
 This function set symbol name. More...
 
bool isConstSymbol () const
 This function is testing symbol type. More...
 
bool isEnumMemberSymbol () const
 This function is testing symbol type. More...
 
bool isFunctionSymbol () const
 This function is testing symbol type. More...
 
bool isInterfaceSymbol () const
 This function is testing symbol type. More...
 
bool isProgramSymbol () const
 This function is testing symbol type. More...
 
bool isStructMemberSymbol () const
 This function is testing symbol type. More...
 
bool isDatatypeSymbol () const
 This function is testing symbol type. More...
 
bool isUnionCaseSymbol () const
 This function is testing symbol type. More...
 
token_loc_tgetLocation ()
 This function returns location for symbol. More...
 
void setLocation (const token_loc_t &loc)
 This function set location for symbol. More...
 
int getFirstLine () const
 This function return first line from location of symbol. More...
 
int getLastLine () const
 This function return last line from location of symbol. More...
 
void addAnnotation (const Annotation &a)
 This function add annotation to vector of symbol annotations. More...
 
std::string printAnnotations ()
 This function returns description about annotation. More...
 
AnnotationfindAnnotation (const std::string &name, Annotation::program_lang_t lang)
 Find annotation in the annotation list. More...
 
std::vector< Annotation * > getAnnotations (const std::string &name, Annotation::program_lang_t lang)
 Find annotations matching name in the annotation list. More...
 
const std::vector< Annotation > & getAnnotations () const
 Return all Symbol annotations. More...
 
ValuegetAnnValue (const std::string &annName, Annotation::program_lang_t lang)
 This function search and returns Value object for given annotation name. More...
 
std::string getAnnStringValue (const std::string &annName, Annotation::program_lang_t lang)
 This function search and returns string for given annotation name. More...
 
std::string getMlComment ()
 This function returns multiline comment for this symbol declared in IDL file. More...
 
void setMlComment (const std::string &comment)
 This function set multiline comment for this symbol declared in IDL file. More...
 
std::string getIlComment ()
 This function returns inline comment for this symbol declared in IDL file. More...
 
void setIlComment (const std::string &comment)
 This function set inline comment for this symbol declared in IDL file. More...
 

Protected Attributes

DataTypem_elementType
 
std::string m_lengthVariableName
 
- Protected Attributes inherited from erpcgen::DataType
data_type_t m_dataType
 
- Protected Attributes inherited from erpcgen::Symbol
symbol_type_t m_symbolType
 
std::string m_name
 
token_loc_t m_location
 
std::vector< Annotationm_annotations
 
std::string m_mlComment
 
std::string m_ilComment
 

Additional Inherited Members

- Public Types inherited from erpcgen::DataType
enum  data_type_t {
  kAliasType,
  kArrayType,
  kBuiltinType,
  kEnumType,
  kFunctionType,
  kListType,
  kStructType,
  kUnionType,
  kVoidType
}
 Supported data types.
 
- Public Types inherited from erpcgen::Symbol
enum  symbol_type_t {
  kConstSymbol,
  kEnumMemberSymbol,
  kFunctionSymbol,
  kInterfaceSymbol,
  kProgramSymbol,
  kStructMemberSymbol,
  kTypenameSymbol,
  kUnionCaseMemberSymbol
}
 Supported symbol types.
 

Detailed Description

Variable length list of another data type.

Constructor & Destructor Documentation

erpcgen::ListType::ListType ( DataType elementType)
inlineexplicit

Constructor.

This function set element type to given data type.

Parameters
[in]elementTypeGiven data type.

Member Function Documentation

string ListType::getDescription ( ) const
overridevirtual

This function returns description about the list.

Returns
String description about list.
See also
std::string AliasType::getDescription() const
std::string EnumType::getDescription() const
std::string EnumMember::getDescription() const
std::string StructMember::getDescription() const
std::string StructType::getDescription() const
std::string VoidType::getDescription() const
std::string ArrayType::getDescription() const
std::string UnionType::getDescription() const

Reimplemented from erpcgen::Symbol.

DataType* erpcgen::ListType::getElementType ( ) const
inline

This function returns element data type.

Returns
Element data type.
std::string& erpcgen::ListType::getLengthVariableName ( )
inline

This function returns variable name. This variable is used in generated file to store size of list.

Returns
Return name for variable.
bool erpcgen::ListType::hasLengthVariable ( )
inline

This function returns information if object contains length variable.

Return values
trueWhen list contains length variable.
falseWhen list doesn't contain length variable.
void erpcgen::ListType::setElementType ( DataType elementType)
inline

This function set element data type.

Parameters
[in]elementTypeElement data type.
void erpcgen::ListType::setLengthVariableName ( const std::string &  lengthVariableName)
inline

This function set variable name. This variable is used in generated file to store size of list.

Parameters
[in]lengthVariableNameGiven name for variable.

Member Data Documentation

DataType* erpcgen::ListType::m_elementType
protected

List element data type.

std::string erpcgen::ListType::m_lengthVariableName
protected

List length variable name.


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