nitpackage: only work on packages passed as argument
authorAlexandre Terrasa <alexandre@moz-code.org>
Mon, 7 May 2018 17:53:15 +0000 (13:53 -0400)
committerAlexandre Terrasa <alexandre@moz-code.org>
Tue, 8 May 2018 13:38:51 +0000 (09:38 -0400)
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

src/nitpackage.nit

index 599aa5a..a9edcd6 100644 (file)
@@ -35,9 +35,9 @@ private class ReadmePhase
 
        redef fun process_mainmodule(mainmodule, mmodules) do
                var expand_packages = toolcontext.opt_expand.value
-               var model = toolcontext.modelbuilder.model
+               var mpackages = extract_mpackages(mmodules)
 
-               for mpackage in model.mpackages do
+               for mpackage in mpackages do
 
                        # Fictive and buggy packages are ignored
                        if not mpackage.has_source then
@@ -59,6 +59,17 @@ private class ReadmePhase
                        end
                end
        end
+
+       # Extract the list of packages from the mmodules passed as arguments
+       fun extract_mpackages(mmodules: Collection[MModule]): Collection[MPackage] do
+               var mpackages = new ArraySet[MPackage]
+               for mmodule in mmodules do
+                       var mpackage = mmodule.mpackage
+                       if mpackage == null then continue
+                       mpackages.add mpackage
+               end
+               return mpackages.to_a
+       end
 end
 
 redef class MPackage