model_index: update ModeView
authorAlexandre Terrasa <alexandre@moz-code.org>
Mon, 16 Oct 2017 03:17:59 +0000 (23:17 -0400)
committerAlexandre Terrasa <alexandre@moz-code.org>
Mon, 16 Oct 2017 03:20:29 +0000 (23:20 -0400)
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

src/model/model_index.nit
src/test_model_index.nit

index 4136243..35c04e8 100644 (file)
@@ -29,8 +29,8 @@
 #
 # ~~~nitish
 # var index = new ModelIndex
 #
 # ~~~nitish
 # var index = new ModelIndex
-#
-# for mentity in model.private_view.mentities do
+# var view = new ModelView(model, mainmodule)
+# for mentity in view.mentities do
 #      index.index(mentity)
 # end
 # ~~~
 #      index.index(mentity)
 # end
 # ~~~
@@ -55,8 +55,8 @@
 #
 # ~~~nitish
 # var index = new ModelIndex
 #
 # ~~~nitish
 # var index = new ModelIndex
-#
-# for mentity in model.private_view.mentities do
+# var view = new ModelView(model, mainmodule)
+# for mentity in view.mentities do
 #      # We don't really care about definitions
 #      if mentity isa MClassDef or mentity isa MPropDef then continue
 #      index.index(mentity)
 #      # We don't really care about definitions
 #      if mentity isa MClassDef or mentity isa MPropDef then continue
 #      index.index(mentity)
@@ -135,7 +135,7 @@ redef class ModelView
        # Keep a direct link to mentities by full name to speed up `mentity_from_uri`
        var mentities_by_full_name: HashMap[String, MEntity] is lazy do
                var mentities_by_full_name = new HashMap[String, MEntity]
        # Keep a direct link to mentities by full name to speed up `mentity_from_uri`
        var mentities_by_full_name: HashMap[String, MEntity] is lazy do
                var mentities_by_full_name = new HashMap[String, MEntity]
-               for mentity in model.private_view.mentities do
+               for mentity in mentities do
                        mentities_by_full_name[mentity.full_name] = mentity
                end
                return mentities_by_full_name
                        mentities_by_full_name[mentity.full_name] = mentity
                end
                return mentities_by_full_name
@@ -144,7 +144,7 @@ redef class ModelView
        # ModelIndex used to perform searches
        var index: ModelIndex is lazy do
                var index = new ModelIndex
        # ModelIndex used to perform searches
        var index: ModelIndex is lazy do
                var index = new ModelIndex
-               for mentity in model.private_view.mentities do
+               for mentity in mentities do
                        if mentity isa MClassDef or mentity isa MPropDef then continue
                        index.index mentity
                end
                        if mentity isa MClassDef or mentity isa MPropDef then continue
                        index.index mentity
                end
@@ -229,7 +229,8 @@ end
 # ~~~nitish
 # # Build index
 # var index = new ModelIndex
 # ~~~nitish
 # # Build index
 # var index = new ModelIndex
-# for mentity in model.private_view.mentities do
+# var view = new ModelView(model, mainmodule)
+# for mentity in view.mentities do
 #      if mentity isa MClassDef or mentity isa MPropDef then continue
 #      index.index(mentity)
 # end
 #      if mentity isa MClassDef or mentity isa MPropDef then continue
 #      index.index(mentity)
 # end
index 38f72c8..feb60a0 100644 (file)
@@ -62,10 +62,12 @@ var mmodules = mbuilder.parse_full([args.first])
 if mmodules.is_empty then return
 mbuilder.run_phases
 toolcontext.run_global_phases(mmodules)
 if mmodules.is_empty then return
 mbuilder.run_phases
 toolcontext.run_global_phases(mmodules)
+var mainmodule = toolcontext.make_main_module(mmodules)
 
 # Build index
 var index = new ModelIndex
 
 # Build index
 var index = new ModelIndex
-for mentity in model.private_view.mentities do
+var view = new ModelView(model, mainmodule)
+for mentity in view.mentities do
        if mentity isa MClassDef or mentity isa MPropDef then continue
        index.index(mentity)
 end
        if mentity isa MClassDef or mentity isa MPropDef then continue
        index.index(mentity)
 end