Esempio n. 1
0
int textual_dict_gen_t::generate_contents(void)
{
	for(size_t i=0; i<parsed_norm_dict->articles.size(); ++i) {
		if(use_chunk_file() && !xmlfilechunk) {
			if(prepare_chunk_file())
				return EXIT_FAILURE;
			if(generate_chunk_file_header())
				return EXIT_FAILURE;
			if(generate_chunk_include(i))
				return EXIT_FAILURE;
		}
		generate_article(parsed_norm_dict->articles[i]);
		if(use_chunk_file() && is_chunk_file_full()) {
			if(generate_chunk_file_footer())
				return EXIT_FAILURE;
			xmlfilechunk.reset(NULL);
			++cur_chunk_num;
		}
	}
	if(use_chunk_file() && !!xmlfilechunk) {
		if(generate_chunk_file_footer())
			return EXIT_FAILURE;
		xmlfilechunk.reset(NULL);
	}
	return EXIT_SUCCESS;
}
Esempio n. 2
0
void generate_file(const char *file_name, int article) {
  parsed_article *pa = parse_file(file_name);

  extend_buffer(article);
  parse_xrefs(pa);
  if (pa != NULL) {
    pa->article = article;
    generate_article(pa);
  }
}