| 98 | |
| 99 | |
| 100 | == CORRECTION == |
| 101 | FdoConcatFunction class doesn't extend FdoFunctionDefinition class. Therefore the new method FdoFunctionDefinition::SupportsVariableArgumentsList() is not virtual and the FdoFunctionDefinition constructors need to take an extra parameter. |
| 102 | |
| 103 | Therefore the correct changes are: |
| 104 | |
| 105 | FdoFunctionDefinition.h |
| 106 | {{{ |
| 107 | class FdoFunctionDefinition : public FdoIDisposable |
| 108 | { |
| 109 | ... |
| 110 | |
| 111 | public: |
| 112 | /// \brief |
| 113 | /// Indicates that this object allows its list of arguments to be variable so the |
| 114 | /// last argument may be repeated. |
| 115 | /// |
| 116 | /// \return |
| 117 | /// Returns true if the function allows a variable list of arguments and false otherwise. |
| 118 | /// |
| 119 | |
| 120 | FDO_API bool FdoFunctionDefinition::SupportsVariableArgumentsList(); |
| 121 | |
| 122 | /// Existing Create methods will take a new 'supportsVariableArgumentsList = false' input parameter. |
| 123 | |
| 124 | FDO_API static FdoFunctionDefinition *Create (FdoString *name, |
| 125 | FdoString *description, |
| 126 | FdoDataType returnType, |
| 127 | FdoArgumentDefinitionCollection *arguments, |
| 128 | FdoFunctionCategoryType functionCategoryType = FdoFunctionCategoryType_Unspecified, |
| 129 | bool supportsVariableArgumentsList = false); |
| 130 | |
| 131 | // Similar for the other 2 Create methods... |
| 132 | }}} |
| 133 | |
| 134 | |