103d2c5358
This patch moves code related to reading/writing various tag file formats into form TMTag and TMWorkspace to TMSourceFile. The benefits of this change are: * only tm_source_file.c interfaces with ctags after this change * tagEntryInfo is removed from headers, no redefinitions needed any more * source code is more evenly distributed among tm_source_file.c, tm_tag.c and tm_workspace.c after the change (tm_tag.c got smaller) * all tag reading/writing is at a single place Despite its size, this patch mostly just moves code. Notable changes are: * tm_tag_new() now creates just an empty tag. The tag is filled by various init_* functions inside tm_source_file.c * there are new functions tm_source_file_read_tags_file() and tm_source_file_write_tags_file() - these hide tags file reading/writing details from tm_workspace.c * tm_source_file_write() debugging function got removed - tm_source_file_write_tags_file() does a similar thing and there's no need to keep around two functions doing the same.