X-Git-Url: http://nitlanguage.org diff --git a/src/nitx.nit b/src/nitx.nit index f71a78e..69b34e7 100644 --- a/src/nitx.nit +++ b/src/nitx.nit @@ -23,11 +23,11 @@ import modelize # then wait for query on std in to display documentation class NitIndex private var toolcontext: ToolContext - private var model: Model - private var mbuilder: ModelBuilder - private var mainmodule: MModule - private var arguments: Array[String] - private var renderer: PagerMatchesRenderer + private var model: Model is noinit + private var mbuilder: ModelBuilder is noinit + private var mainmodule: MModule is noinit + private var arguments: Array[String] is noinit + private var renderer: PagerMatchesRenderer is noinit # New constructor to use the pre-calculated model when interpreting a module init with_infos(mbuilder: ModelBuilder, mmodule: MModule) do @@ -42,9 +42,8 @@ class NitIndex renderer = new PagerMatchesRenderer(self) end - init(toolcontext: ToolContext) do + init do # We need a model to collect stufs - self.toolcontext = toolcontext self.arguments = toolcontext.option_context.rest if arguments.length > 2 then @@ -234,19 +233,11 @@ end private class IndexQuery var string: String var keyword: String - init(string: String, keyword: String) do - self.string = string - self.keyword = keyword - end end private class IndexQueryPair super IndexQuery var category: String - init(string: String, keyword: String, category: String) do - super(string, keyword) - self.category = category - end end # A match to a query in the nit index @@ -298,7 +289,6 @@ end private class PagerMatchesRenderer var index: NitIndex - init(index: NitIndex) do self.index = index fun render_matches(query: IndexQuery, matches: Collection[IndexMatch]) do var pager = new Pager @@ -320,7 +310,7 @@ private class PagerMatchesRenderer pager.render end - private fun props_fulldoc(pager: Pager, raw_mprops: List[MProperty]) do + fun props_fulldoc(pager: Pager, raw_mprops: List[MProperty]) do # group by module var cats = new HashMap[MModule, Array[MProperty]] for mprop in raw_mprops do @@ -357,7 +347,7 @@ private class Pager fun add_indent do addn(" " * indent) fun addn(text: String) do content.append(text.escape) fun add_rule do add("\n---\n") - fun render do sys.system("echo \"{content}\" | pager -r") + fun render do sys.system("echo \"{content}\" | less -r") end redef class MModule @@ -456,9 +446,9 @@ redef class MClass var res = new FlatBuffer if arity > 0 then res.append("[") - for i in [0..intro.parameter_names.length[ do - res.append(intro.parameter_names[i]) - if i < intro.parameter_names.length - 1 then res.append(", ") + for i in [0..mparameters.length[ do + res.append(mparameters[i].name) + if i < mparameters.length - 1 then res.append(", ") end res.append("]") end @@ -767,7 +757,7 @@ redef class MGenericType end redef class MParameterType - redef fun to_console do return mclass.intro.parameter_names[rank] + redef fun to_console do return name end redef class MVirtualType