include/relpipe/writer/RelationalWriter.h
branchv_0
changeset 22 53f4887dadb4
parent 20 bef6648e79b1
child 24 00fe696500c5
equal deleted inserted replaced
21:118b68d73420 22:53f4887dadb4
    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;