X-Git-Url: http://nitlanguage.org diff --git a/src/doc/console_templates/console_model.nit b/src/doc/console_templates/console_model.nit index 8de793c..5d693b1 100644 --- a/src/doc/console_templates/console_model.nit +++ b/src/doc/console_templates/console_model.nit @@ -94,7 +94,10 @@ redef class MEntity return mdoc.cs_short_comment end - # Returns 1self` as a list element that can be displayed in console. + # Returns `self` as a list element that can be displayed in console. + # + # Displays `cs_icon`, `cs_name`, `cs_short_comment, `cs_namespace`, + # `cs_declaration` and `cs_location`. fun cs_list_item: String do var tpl = new FlatBuffer tpl.append " {cs_visibility_color(cs_icon).bold} {cs_name.blue.bold}" @@ -111,6 +114,18 @@ redef class MEntity return tpl.write_to_string end + # Returns `self` as a short list element that can be displayed in console. + # Displays `cs_icon`, `cs_name`, and `cs_short_comment. + fun cs_short_list_item: String do + var tpl = new FlatBuffer + tpl.append " {cs_visibility_color(cs_icon).bold} {cs_name.blue.bold}" + var comment = cs_short_comment + if comment != null then + tpl.append " # {comment}".green + end + return tpl.write_to_string + end + # ASCII icon to be displayed in front of the list item. fun cs_icon: String do return "*" @@ -121,6 +136,26 @@ redef class MEntity # # See module `console`. fun cs_visibility_color(string: String): String do return string.green + + # Source code associated to this MEntity. + # + # Uses `cs_location` to locate the source code. + fun cs_source_code: String do + # FIXME up location to mentity + var loc = new Location.from_string(cs_location) + var fr = new FileReader.open(loc.file.filename) + var content = new FlatBuffer + var i = 0 + while not fr.eof do + i += 1 + var line = fr.read_line + if i < loc.line_start or i > loc.line_end then continue + # FIXME add nitlight for console + content.append "{line}\n" + end + fr.close + return content.write_to_string + end end redef class MProject