nitmetrics: set private visibility to internal services
authorAlexandre Terrasa <alexandre@moz-code.org>
Sat, 22 Jun 2013 01:48:09 +0000 (21:48 -0400)
committerAlexandre Terrasa <alexandre@moz-code.org>
Sat, 22 Jun 2013 01:48:09 +0000 (21:48 -0400)
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

src/metrics/inheritance_metrics.nit
src/metrics/rta_metrics.nit

index 27e80fb..0cfef0b 100644 (file)
@@ -22,56 +22,56 @@ private import metrics_base
 
 redef class Model
        # Extract the subset of classes from a set of mclass
-       fun extract_classes(mclasses: Collection[MClass]): Set[MClass] do
+       private fun extract_classes(mclasses: Collection[MClass]): Set[MClass] do
                var lst = new HashSet[MClass]
                for mclass in mclasses do if mclass.is_class then lst.add(mclass)
                return lst
        end
 
        # Extract the subset of interfaces from a set of mclass
-       fun extract_interfaces(mclasses: Collection[MClass]): Set[MClass] do
+       private fun extract_interfaces(mclasses: Collection[MClass]): Set[MClass] do
                var lst = new HashSet[MClass]
                for mclass in mclasses do if mclass.is_interface then lst.add(mclass)
                return lst
        end
 
        # Extract the subset of generic classes/interfaces from a set of mclass
-       fun extract_generics(mclasses: Collection[MClass]): Set[MClass] do
+       private fun extract_generics(mclasses: Collection[MClass]): Set[MClass] do
                var lst = new HashSet[MClass]
                for mclass in mclasses do if mclass.arity > 0 then lst.add(mclass)
                return lst
        end
 
        # Extract the subset of abstract classes from a set of mclass
-       fun extract_abstracts(mclasses: Collection[MClass]): Set[MClass] do
+       private fun extract_abstracts(mclasses: Collection[MClass]): Set[MClass] do
                var lst = new HashSet[MClass]
                for mclass in mclasses do if mclass.is_abstract then lst.add(mclass)
                return lst
        end
 
        # Extract the subset of user defined classes/interfaces from a set of mclass
-       fun extract_user_defined(mclasses: Collection[MClass]): Set[MClass] do
+       private fun extract_user_defined(mclasses: Collection[MClass]): Set[MClass] do
                var lst = new HashSet[MClass]
                for mclass in mclasses do if mclass.is_user_defined then lst.add(mclass)
                return lst
        end
 
        # Extract the subset of user defined modules from a set of mmodules
-       fun extract_user_defined_modules(mmodules: Collection[MModule]): Set[MModule] do
+       private fun extract_user_defined_modules(mmodules: Collection[MModule]): Set[MModule] do
                var lst = new HashSet[MModule]
                for mmodule in mmodules do if mmodule.is_user_defined then lst.add(mmodule)
                return lst
        end
 
        # Extract the subset of classes/interfaces from sl lib
-       fun extract_stdlib(mclasses: Collection[MClass]): Set[MClass] do
+       private fun extract_stdlib(mclasses: Collection[MClass]): Set[MClass] do
                var lst = new HashSet[MClass]
                for mclass in mclasses do if not mclass.is_user_defined then lst.add(mclass)
                return lst
        end
 
        # Extract the subset of user defined modules from std lib
-       fun extract_stdlib_modules(mmodules: Collection[MModule]): Set[MModule] do
+       private fun extract_stdlib_modules(mmodules: Collection[MModule]): Set[MModule] do
                var lst = new HashSet[MModule]
                for mmodule in mmodules do if not mmodule.is_user_defined then lst.add(mmodule)
                return lst
@@ -150,7 +150,7 @@ redef class MClass
        end
 
        # Return the longest path from class to root hierarchy
-       fun path_to_object: Array[MClass] do
+       private fun path_to_object: Array[MClass] do
                var path = new Array[MClass]
                var max_dit: nullable Int = null
                var max_parent: nullable MClass = null
@@ -174,7 +174,7 @@ redef class MClass
        end
 
        # Return the longest path from class to root hierarchy
-       fun ud_path_to_object: Array[MClass] do
+       private fun ud_path_to_object: Array[MClass] do
                var path = new Array[MClass]
                if not self.is_user_defined then return path
                var max_dit: nullable Int = null
@@ -199,7 +199,7 @@ redef class MClass
        end
 
        # Return the longest path from class to root hierarchy following only classes relations
-       fun class_path_to_object: Array[MClass] do
+       private fun class_path_to_object: Array[MClass] do
                var path = new Array[MClass]
                if not self.is_class then return path
                var max_dit: nullable Int = null
@@ -224,7 +224,7 @@ redef class MClass
        end
 
        # Return the longest path from class to root hierarchy following only interfaces relations
-       fun interface_path_to_object: Array[MClass] do
+       private fun interface_path_to_object: Array[MClass] do
                var path = new Array[MClass]
                if not self.is_interface then return path
                var max_dit: nullable Int = null
@@ -249,7 +249,7 @@ redef class MClass
        end
 
        # Return the longest path from class to root hierarchy following only ud classes relations
-       fun ud_class_path_to_object: Array[MClass] do
+       private fun ud_class_path_to_object: Array[MClass] do
                var path = new Array[MClass]
                if not self.is_class or not self.is_user_defined then return path
                var max_dit: nullable Int = null
@@ -274,7 +274,7 @@ redef class MClass
        end
 
        # Return the longest path from class to root hierarchy following only ud interfaces relations
-       fun ud_interface_path_to_object: Array[MClass] do
+       private fun ud_interface_path_to_object: Array[MClass] do
                var path = new Array[MClass]
                if not self.is_interface or not self.is_user_defined then return path
                var max_dit: nullable Int = null
@@ -300,37 +300,37 @@ redef class MClass
 
        # * -> * DUI
 
-       fun is_dui_eligible: Bool do
+       private fun is_dui_eligible: Bool do
                for parent in parents do if parent.name != "Object" then return true
                return false
        end
-       fun is_ccdui_eligible: Bool do
+       private fun is_ccdui_eligible: Bool do
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_class then return true
                return false
        end
-       fun is_cidui_eligible: Bool do
+       private fun is_cidui_eligible: Bool do
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_iidui_eligible: Bool do
+       private fun is_iidui_eligible: Bool do
                if not is_interface then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_if_eligible(model: Model): Bool do return not children.is_empty
-       fun is_ccif_eligible(model: Model): Bool do
+       private fun is_if_eligible(model: Model): Bool do return not children.is_empty
+       private fun is_ccif_eligible(model: Model): Bool do
                if not is_class then return false
                for child in children do if child.is_class then return true
                return false
        end
-       fun is_icif_eligible(model: Model): Bool do
+       private fun is_icif_eligible(model: Model): Bool do
                if not is_interface then return false
                for child in children do if child.is_class then return true
                return false
        end
-       fun is_iiif_eligible(model: Model): Bool do
+       private fun is_iiif_eligible(model: Model): Bool do
                if not is_interface then return false
                for child in children do if child.is_interface then return true
                return false
@@ -338,46 +338,46 @@ redef class MClass
 
        # SL -> * DUI
 
-       fun is_sldui_eligible: Bool do
+       private fun is_sldui_eligible: Bool do
                if is_user_defined then return false
                for parent in parents do if parent.name != "Object" then return true
                return false
        end
-       fun is_slccdui_eligible: Bool do
+       private fun is_slccdui_eligible: Bool do
                if is_user_defined then return false
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_class then return true
                return false
        end
-       fun is_slcidui_eligible: Bool do
+       private fun is_slcidui_eligible: Bool do
                if is_user_defined then return false
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_sliidui_eligible: Bool do
+       private fun is_sliidui_eligible: Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_slif_eligible(model: Model): Bool do
+       private fun is_slif_eligible(model: Model): Bool do
                if is_user_defined then return false
                return not children.is_empty
        end
-       fun is_slccif_eligible(model: Model): Bool do
+       private fun is_slccif_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_class then return false
                for child in children do if child.is_class then return true
                return false
        end
-       fun is_slicif_eligible(model: Model): Bool do
+       private fun is_slicif_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_class then return true
                return false
        end
-       fun is_sliiif_eligible(model: Model): Bool do
+       private fun is_sliiif_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_interface then return true
@@ -386,24 +386,24 @@ redef class MClass
 
        # SL -> SL
 
-       fun is_slifsl_eligible(model: Model): Bool do
+       private fun is_slifsl_eligible(model: Model): Bool do
                if is_user_defined then return false
                for child in children do if not child.is_user_defined then return true
                return false
        end
-       fun is_slccifsl_eligible(model: Model): Bool do
+       private fun is_slccifsl_eligible(model: Model): Bool do
                if is_user_defined then return false
                if is_class then return false
                for child in children do if not child.is_user_defined and child.is_class then return true
                return false
        end
-       fun is_slicifsl_eligible(model: Model): Bool do
+       private fun is_slicifsl_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for child in children do if not child.is_user_defined and child.is_class then return true
                return false
        end
-       fun is_sliiifsl_eligible(model: Model): Bool do
+       private fun is_sliiifsl_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for child in children do if not child.is_user_defined and child.is_interface then return true
@@ -412,24 +412,24 @@ redef class MClass
 
        # SL -> UD
 
-       fun is_slifud_eligible(model: Model): Bool do
+       private fun is_slifud_eligible(model: Model): Bool do
                if is_user_defined then return false
                for child in children do if child.is_user_defined then return true
                return false
        end
-       fun is_slccifud_eligible(model: Model): Bool do
+       private fun is_slccifud_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_class then return false
                for child in children do if child.is_user_defined and child.is_class then return true
                return false
        end
-       fun is_slicifud_eligible(model: Model): Bool do
+       private fun is_slicifud_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_user_defined and child.is_class then return true
                return false
        end
-       fun is_sliiifud_eligible(model: Model): Bool do
+       private fun is_sliiifud_eligible(model: Model): Bool do
                if is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_user_defined and child.is_interface then return true
@@ -438,46 +438,46 @@ redef class MClass
 
        # UD -> *
 
-       fun is_uddui_eligible: Bool do
+       private fun is_uddui_eligible: Bool do
                if not is_user_defined then return false
                for parent in parents do if parent.name != "Object" then return true
                return false
        end
-       fun is_udccdui_eligible: Bool do
+       private fun is_udccdui_eligible: Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_class then return true
                return false
        end
-       fun is_udcidui_eligible: Bool do
+       private fun is_udcidui_eligible: Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_udiidui_eligible: Bool do
+       private fun is_udiidui_eligible: Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_udif_eligible(model: Model): Bool do
+       private fun is_udif_eligible(model: Model): Bool do
                if not is_user_defined then return false
                return not children.is_empty
        end
-       fun is_udccif_eligible(model: Model): Bool do
+       private fun is_udccif_eligible(model: Model): Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for child in children do if child.is_class then return true
                return false
        end
-       fun is_udicif_eligible(model: Model): Bool do
+       private fun is_udicif_eligible(model: Model): Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_class then return true
                return false
        end
-       fun is_udiiif_eligible(model: Model): Bool do
+       private fun is_udiiif_eligible(model: Model): Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_interface then return true
@@ -486,24 +486,24 @@ redef class MClass
 
        # UD -> SL
 
-       fun is_udduisl_eligible: Bool do
+       private fun is_udduisl_eligible: Bool do
                if not is_user_defined then return false
                for parent in parents do if not parent.is_user_defined and parent.name != "Object" then return true
                return false
        end
-       fun is_udccduisl_eligible: Bool do
+       private fun is_udccduisl_eligible: Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for parent in parents do if not parent.is_user_defined and parent.name != "Object" and parent.is_class then return true
                return false
        end
-       fun is_udciduisl_eligible: Bool do
+       private fun is_udciduisl_eligible: Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for parent in parents do if not parent.is_user_defined and parent.name != "Object" and parent.is_interface then return true
                return false
        end
-       fun is_udiiduisl_eligible: Bool do
+       private fun is_udiiduisl_eligible: Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for parent in parents do if not parent.is_user_defined and parent.name != "Object" and parent.is_interface then return true
@@ -512,52 +512,51 @@ redef class MClass
 
        # UD -> UD
 
-       fun is_udduiud_eligible: Bool do
+       private fun is_udduiud_eligible: Bool do
                if not is_user_defined then return false
                for parent in parents do if parent.name != "Object" and parent.is_user_defined then return true
                return false
        end
-       fun is_udccduiud_eligible: Bool do
+       private fun is_udccduiud_eligible: Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_class and parent.is_user_defined then return true
                return false
        end
-       fun is_udciduiud_eligible: Bool do
+       private fun is_udciduiud_eligible: Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface and parent.is_user_defined then return true
                return false
        end
-       fun is_udiiduiud_eligible: Bool do
+       private fun is_udiiduiud_eligible: Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for parent in parents do if parent.name != "Object" and parent.is_interface and parent.is_user_defined then return true
                return false
        end
-       fun is_udifud_eligible(model: Model): Bool do
+       private fun is_udifud_eligible(model: Model): Bool do
                if not is_user_defined then return false
                return not children.is_empty
        end
-       fun is_udccifud_eligible(model: Model): Bool do
+       private fun is_udccifud_eligible(model: Model): Bool do
                if not is_user_defined then return false
                if not is_class then return false
                for child in children do if child.is_user_defined and child.is_class then return true
                return false
        end
-       fun is_udicifud_eligible(model: Model): Bool do
+       private fun is_udicifud_eligible(model: Model): Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_user_defined and child.is_class then return true
                return false
        end
-       fun is_udiiifud_eligible(model: Model): Bool do
+       private fun is_udiiifud_eligible(model: Model): Bool do
                if not is_user_defined then return false
                if not is_interface then return false
                for child in children do if child.is_user_defined and child.is_interface then return true
                return false
        end
-
 end
 
 redef class MModule
@@ -566,8 +565,8 @@ redef class MModule
        private var nc: Int = 0                 # (NC)  Number of Classes
        private var ni: Int = 0                 # (NI)  Number of Interfaces
        private var nac : Int = 0               # (NAC) Number of Abstract Classes
-       protected var ngc : Int = 0             # (NGC) Number of Generic Classes
-       protected var ngi : Int = 0             # (NGI) Number of Generic Interfaces
+       private var ngc : Int = 0               # (NGC) Number of Generic Classes
+       private var ngi : Int = 0               # (NGI) Number of Generic Interfaces
 
        private var dit = ""                    # (DIT) Global Depth in Inheritance Tree
        private var dui = ""                    # (DUI) Proportion of types that either implement an interface or extend another type other than Object
@@ -579,7 +578,7 @@ redef class MModule
        private var icif = ""                   # (ICIF) Proportion of interfaces implemented by some other class.
        private var iiif = ""                   # (IIIF) Proportion of interfaces extended by some other interface.
 
-       fun compute_module_inheritance_metrics(model: Model) do
+       private fun compute_module_inheritance_metrics(model: Model) do
                var ditsum = 0
                var dui_count = 0
                var ccdui_count = 0
index 7ba1899..67da4e9 100644 (file)
@@ -40,16 +40,16 @@ redef class RapidTypeAnalysis
 end
 
 redef class MType
-       var nlvt: Int = 0
-       var nlct: Int = 0
+       private var nlvt: Int = 0
+       private var nlct: Int = 0
 
-       fun is_user_defined: Bool do
+       private fun is_user_defined: Bool do
                var mtype = self
                if mtype isa MNullableType then mtype = mtype.mtype
                return self.as(MClassType).mclass.is_user_defined
        end
 
-       fun get_depth: Int do
+       private fun get_depth: Int do
                var mtype = self
                if mtype isa MNullableType then mtype = mtype.mtype
                if not mtype isa MGenericType then return 0
@@ -63,10 +63,10 @@ redef class MType
 end
 
 redef class MClass
-       var nlvt: Int = 0
-       var nlct: Int = 0
-       var live_types: Set[MType] = new HashSet[MType]
-       var cast_types: Set[MType] = new HashSet[MType]
+       private var nlvt: Int = 0
+       private var nlct: Int = 0
+       private var live_types: Set[MType] = new HashSet[MType]
+       private var cast_types: Set[MType] = new HashSet[MType]
 end
 
 # Run a runtime type analysis and print metrics