eRPC Generator (erpcgen)  Rev. 1.11.0
NXP Semiconductors
FunctionType.hpp
1 /*
2  * Copyright (c) 2014, Freescale Semiconductor, Inc.
3  * Copyright 2016 NXP
4  * All rights reserved.
5  *
6  *
7  * SPDX-License-Identifier: BSD-3-Clause
8  */
9 
10 #ifndef _EMBEDDED_RPC__FUNCTION_TYPE_H_
11 #define _EMBEDDED_RPC__FUNCTION_TYPE_H_
12 
13 #include "DataType.hpp"
14 #include "Function.hpp"
15 #include "StructType.hpp"
16 #include "Symbol.hpp"
17 
18 #include <string>
19 
21 // Classes
23 
24 namespace erpcgen {
25 
31 class FunctionType : public FunctionBase, public DataType
32 {
33 public:
34  typedef std::vector<Function *> c_function_list_t;
43  explicit FunctionType(const Token &tok)
44  : FunctionBase()
45  , DataType(tok, kFunctionType)
46  , m_callbackFuns()
47  {
48  }
49 
64  virtual std::string getDescription() const override;
65 
69  c_function_list_t &getCallbackFuns() { return m_callbackFuns; }
70 
71 protected:
72  c_function_list_t m_callbackFuns;
73 };
74 
75 } // namespace erpcgen
76 
77 #endif // _EMBEDDED_RPC__FUNCTION_TYPE_H_
Function data type.
Definition: FunctionType.hpp:31
virtual std::string getDescription() const override
This function returns description about the interface function.
Definition: Type.cpp:495
c_function_list_t & getCallbackFuns()
Returns list of callback functions.
Definition: FunctionType.hpp:69
Base class for data types.
Definition: DataType.hpp:26
Encapsulates all information about a token.
Definition: Token.hpp:60
Function base declaration.
Definition: Function.hpp:30
c_function_list_t m_callbackFuns
Definition: FunctionType.hpp:72
std::vector< Function * > c_function_list_t
Definition: FunctionType.hpp:34
Definition: AstNode.hpp:26
FunctionType(const Token &tok)
Constructor.
Definition: FunctionType.hpp:43