gout

A static git page generator
git clone https://git.bracken.jp/gout.git
Log | Files | Refs | README | LICENSE

index_writer.c (1181B)


      1 #include "writer/html/index_writer.h"
      2 
      3 #include <assert.h>
      4 #include <stdio.h>
      5 #include <stdlib.h>
      6 
      7 #include "git/repo.h"
      8 #include "utils.h"
      9 #include "writer/html/repo_index.h"
     10 
     11 struct HtmlIndexWriter {
     12   HtmlRepoIndex* index;
     13 };
     14 
     15 HtmlIndexWriter* html_indexwriter_create(FILE* out) {
     16   assert(out != NULL);
     17   HtmlIndexWriter* writer = ecalloc(1, sizeof(HtmlIndexWriter));
     18   writer->index = html_repoindex_create(out);
     19   return writer;
     20 }
     21 
     22 void html_indexwriter_free(HtmlIndexWriter* writer) {
     23   if (!writer) {
     24     return;
     25   }
     26   html_repoindex_free(writer->index);
     27   free(writer);
     28 }
     29 
     30 void html_indexwriter_set_me_url(HtmlIndexWriter* writer, const char* url) {
     31   assert(writer != NULL);
     32   assert(url != NULL);
     33   html_repoindex_set_me_url(writer->index, url);
     34 }
     35 
     36 void html_indexwriter_begin(HtmlIndexWriter* writer) {
     37   assert(writer != NULL);
     38   html_repoindex_begin(writer->index);
     39 }
     40 
     41 void html_indexwriter_add_repo(HtmlIndexWriter* writer, const GitRepo* repo) {
     42   assert(writer != NULL);
     43   assert(repo != NULL);
     44   html_repoindex_add_repo(writer->index, repo);
     45 }
     46 
     47 void html_indexwriter_end(HtmlIndexWriter* writer) {
     48   assert(writer != NULL);
     49   html_repoindex_end(writer->index);
     50 }