Merge pull request #931 from asuessenbach/function

Add support for functions with a new parameter pattern.
This commit is contained in:
Andreas Süßenbach 2021-04-12 15:43:51 +02:00 committed by GitHub
commit dab8ba586f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 731 additions and 288 deletions

File diff suppressed because it is too large Load Diff

View File

@ -390,6 +390,13 @@ private:
std::map<size_t, size_t> const & vectorParamIndices, std::map<size_t, size_t> const & vectorParamIndices,
std::vector<size_t> const & returnParamIndices, std::vector<size_t> const & returnParamIndices,
bool definition ) const; bool definition ) const;
void appendCommandVectorSingular( std::string & str,
std::string const & name,
CommandData const & commandData,
size_t initialSkipCount,
std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex,
bool definition ) const;
void appendCommandVectorSingularUnique( std::string & str, void appendCommandVectorSingularUnique( std::string & str,
std::string const & name, std::string const & name,
CommandData const & commandData, CommandData const & commandData,
@ -505,22 +512,24 @@ private:
std::vector<ParamData>::const_iterator lenIt ) const; std::vector<ParamData>::const_iterator lenIt ) const;
std::string constructArgumentListEnhanced( std::vector<ParamData> const & params, std::string constructArgumentListEnhanced( std::vector<ParamData> const & params,
std::set<size_t> const & skippedParams, std::set<size_t> const & skippedParams,
size_t singularParam, std::set<size_t> const & singularParams,
bool definition, bool definition,
bool withAllocators, bool withAllocators,
bool structureChain, bool structureChain,
bool withDispatcher ) const; bool withDispatcher ) const;
std::string constructArgumentListStandard( std::vector<ParamData> const & params, std::string constructArgumentListStandard( std::vector<ParamData> const & params,
std::set<size_t> const & skippedParams ) const; std::set<size_t> const & skippedParams ) const;
std::string constructCallArgumentEnhanced( ParamData const & param, std::string constructCallArgumentEnhanced( std::vector<ParamData> const & params,
std::vector<ParamData> const & params, size_t paramIndex,
bool nonConstPointerAsNullptr, bool nonConstPointerAsNullptr,
size_t singularParamIndex, std::set<size_t> const & singularParams,
std::vector<size_t> const & returnParamIndices,
bool raiiHandleMemberFunction ) const; bool raiiHandleMemberFunction ) const;
std::string constructCallArgumentsEnhanced( std::vector<ParamData> const & params, std::string constructCallArgumentsEnhanced( std::vector<ParamData> const & params,
size_t initialSkipCount, size_t initialSkipCount,
bool nonConstPointerAsNullptr, bool nonConstPointerAsNullptr,
size_t singularParamIndex, std::set<size_t> const & singularParams,
std::vector<size_t> const & returnParamIndices,
bool raiiHandleMemberFunction ) const; bool raiiHandleMemberFunction ) const;
std::string constructCallArgumentsStandard( std::string const & handle, std::vector<ParamData> const & params ) const; std::string constructCallArgumentsStandard( std::string const & handle, std::vector<ParamData> const & params ) const;
std::string constructCommandBoolGetValue( std::string const & name, std::string constructCommandBoolGetValue( std::string const & name,
@ -596,6 +605,13 @@ private:
bool definition, bool definition,
std::map<size_t, size_t> const & vectorParamIndices, std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex ) const; size_t returnParamIndex ) const;
std::string constructCommandResultGetVector( std::string const & name,
CommandData const & commandData,
size_t initialSkipCount,
bool definition,
std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex,
bool withAllocator ) const;
std::string constructCommandResultGetVectorAndValue( std::string const & name, std::string constructCommandResultGetVectorAndValue( std::string const & name,
CommandData const & commandData, CommandData const & commandData,
size_t initialSkipCount, size_t initialSkipCount,
@ -636,6 +652,12 @@ private:
bool definition, bool definition,
std::map<size_t, size_t> const & vectorParamIndices, std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex ) const; size_t returnParamIndex ) const;
std::string constructCommandResultGetVectorOfVoidSingular( std::string const & name,
CommandData const & commandData,
size_t initialSkipCount,
bool definition,
std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex ) const;
std::string constructCommandResultGetVectorSingular( std::string const & name, std::string constructCommandResultGetVectorSingular( std::string const & name,
CommandData const & commandData, CommandData const & commandData,
size_t initialSkipCount, size_t initialSkipCount,
@ -715,10 +737,16 @@ private:
std::vector<ParamData> const & params, std::vector<ParamData> const & params,
bool singular, bool singular,
bool encounteredArgument ) const; bool encounteredArgument ) const;
std::pair<std::string, std::string> constructRAIIHandleMemberFunctionResultSingleGetVector(
std::map<std::string, CommandData>::const_iterator commandIt,
size_t initialSkipCount,
std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex ) const;
std::string constructRAIIHandleConstructorCallArguments( std::string const & handleType, std::string constructRAIIHandleConstructorCallArguments( std::string const & handleType,
std::vector<ParamData> const & params, std::vector<ParamData> const & params,
bool nonConstPointerAsNullptr, bool nonConstPointerAsNullptr,
size_t singularParamIndex, std::set<size_t> const & singularParams,
std::vector<size_t> const & returnParamIndices,
bool allocatorIsMemberVariable ) const; bool allocatorIsMemberVariable ) const;
std::string constructRAIIHandleConstructorEnumerate( std::string constructRAIIHandleConstructorEnumerate(
std::pair<std::string, HandleData> const & handle, std::pair<std::string, HandleData> const & handle,
@ -823,6 +851,11 @@ private:
size_t initialSkipCount, size_t initialSkipCount,
std::map<size_t, size_t> const & vectorParamIndices, std::map<size_t, size_t> const & vectorParamIndices,
std::vector<size_t> const & nonConstPointerParamIndices ) const; std::vector<size_t> const & nonConstPointerParamIndices ) const;
std::pair<std::string, std::string> constructRAIIHandleMemberFunctionResultSingleGetVectorSingular(
std::map<std::string, CommandData>::const_iterator commandIt,
size_t initialSkipCount,
std::map<size_t, size_t> const & vectorParamIndices,
size_t returnParamIndex ) const;
std::pair<std::string, std::string> constructRAIIHandleMemberFunctionResultSingleGetVectorOfVoidSingular( std::pair<std::string, std::string> constructRAIIHandleMemberFunctionResultSingleGetVectorOfVoidSingular(
std::map<std::string, CommandData>::const_iterator commandIt, std::map<std::string, CommandData>::const_iterator commandIt,
size_t initialSkipCount, size_t initialSkipCount,