| 63 | } |
| 64 | |
| 65 | static void validatePropertyName(const std::vector<PropertyDefinition>& definitions) { |
| 66 | case_insensitve_set_t nameSet; |
| 67 | for (auto& definition : definitions) { |
| 68 | if (nameSet.contains(definition.getName())) { |
| 69 | throw BinderException(std::format( |
| 70 | "Duplicated column name: {}, column name must be unique.", definition.getName())); |
| 71 | } |
| 72 | if (Binder::reservedInColumnName(definition.getName())) { |
| 73 | throw BinderException( |
| 74 | std::format("{} is a reserved property name.", definition.getName())); |
| 75 | } |
| 76 | nameSet.insert(definition.getName()); |
| 77 | } |
| 78 | } |
| 79 | |
| 80 | std::vector<PropertyDefinition> Binder::bindPropertyDefinitions( |
| 81 | const std::vector<ParsedPropertyDefinition>& parsedDefinitions, const std::string& tableName) { |
no test coverage detected