print specify immutable members
This commit is contained in:
@@ -82,12 +82,17 @@ fn (mut g Generator) gen_class_print_func(stmt ClassDecl) {
|
||||
g.out.writeln('for(int i=0; i<indent + 1; i++) printf(" ");')
|
||||
g.out.write_string('printf("${member.name}: ");')
|
||||
|
||||
|
||||
if member.type != 'string' && g.symbols.lookup_class(member.type) != none {
|
||||
inner_struct_name := mangle_struct(member.type)
|
||||
g.out.writeln('print_${inner_struct_name}(s.${member.name}, indent + 1);')
|
||||
} else {
|
||||
format := get_type_format(member.type)
|
||||
g.out.write_string('printf("%${format}\\n", s.${member.name}')
|
||||
g.out.write_string('printf("%${format}')
|
||||
if member.is_immutable {
|
||||
g.out.write_string(' (immutable) ')
|
||||
}
|
||||
g.out.write_string('\\n", s.${member.name}')
|
||||
if member.type == 'string' {
|
||||
g.out.write_string('.string')
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user