21 * @throws RelpipeWriterException on unsupported typeCode |
21 * @throws RelpipeWriterException on unsupported typeCode |
22 */ |
22 */ |
23 virtual TypeId toTypeId(const string_t typeCode) = 0; |
23 virtual TypeId toTypeId(const string_t typeCode) = 0; |
24 |
24 |
25 /** |
25 /** |
|
26 * TODO: not needed for writing → move to lib-reader. |
|
27 * |
26 * @param typeId numeric type id as defined in Specification |
28 * @param typeId numeric type id as defined in Specification |
27 * @return string code of given type |
29 * @return string code of given type |
28 * @throws RelpipeWriterException on unsupported typeId |
30 * @throws RelpipeWriterException on unsupported typeId |
29 */ |
31 */ |
30 virtual string_t toTypeCode(const TypeId typeId) = 0; |
32 virtual string_t toTypeCode(const TypeId typeId) = 0; |
31 |
33 |
32 /** |
34 /** |
|
35 * TODO: use custom extensible class instead of std::pair |
|
36 * |
33 * @param name name of the relation (table) |
37 * @param name name of the relation (table) |
34 * @param attributes list of attributes (columns) containing their names and types |
38 * @param attributes list of attributes (columns) containing their names and types |
35 * @param writeHeader header might be omitted – when appending new records to a stream alreaready containing the header |
39 * @param writeHeader header might be omitted – when appending new records to a stream alreaready containing the header |
36 */ |
40 */ |
37 virtual void startRelation(string_t name, std::vector<std::pair<string_t, TypeId>> attributes, boolean_t writeHeader) = 0; |
41 virtual void startRelation(string_t name, std::vector<std::pair<string_t, TypeId>> attributes, boolean_t writeHeader) = 0; |