Skip to content

core.codegenerator #

fn new #

fn new(args GeneratorOptions) !CodeGenerator

struct CodeGenerator #

struct CodeGenerator {
pub mut:
	parser     codeparser.CodeParser
	output_dir string
	format     bool
}

fn (CodeGenerator) generate_all #

fn (mut gen CodeGenerator) generate_all() !

generate_all generates markdown docs for all modules

fn (CodeGenerator) generate_module #

fn (mut gen CodeGenerator) generate_module(module_name string) !

generate_module generates markdown for a single module

fn (CodeGenerator) module_to_markdown #

fn (gen CodeGenerator) module_to_markdown(module_name string) !string

module_to_markdown generates complete markdown for a module

fn (CodeGenerator) module_to_filename #

fn (gen CodeGenerator) module_to_filename(module_name string) string

module_to_filename converts module name to filename e.g., incubaid.herolib.core.code -> code__core__code.md

struct GeneratorOptions #

@[params]
struct GeneratorOptions {
pub:
	parser_path string @[required]
	output_dir  string @[required]
	recursive   bool = true
	format      bool = true
}

struct MarkdownGenerator #

struct MarkdownGenerator {
pub mut:
	generator  CodeGenerator
	output_dir string
}

fn (MarkdownGenerator) write_all #

fn (mut mgen MarkdownGenerator) write_all() !

write_all writes all generated markdown files to disk

fn (MarkdownGenerator) write_module #

fn (mut mgen MarkdownGenerator) write_module(module_name string) !

write_module writes a single module's markdown to disk