EveryModuleCombinations enum
A covering of the apps with every module: the apps that have, between them, every tuple of strength providers of different roles that one of the apps has, of the roles that take one and have several providers among the apps, and every module that one of the apps has; all of the apps without a strength.
It takes only apps that the contract harness built, so it respects the rules by which a module fits in an app: a tuple of providers that no app has, such as a provider with one that its modules do not fit with, needs no app, and a module that fits only one combination, such as one with a variant for one provider that depends on a module with a variant for another, gets the app of that combination. With fewer such roles than strength, the tuples have them all; with one, each of its providers is in an app.
The covering is the same for the same apps. It takes, again and again, the app that has the most tuples and modules that no app it took has, breaking a tie either by the order of the apps or by the app whose providers and modules are in the most of those not yet taken, then leaves out each app whose tuples and modules the others have too, and keeps the smaller of the two coverings, the first on a tie.
The value of a mode option of a role (see RoleOption.mode) is one
more thing that an app has, as the provider of a role is: the first
value in the apps of the covering, and another one in an app of
modeAppsOf. So a covering takes, next to its apps, a few of those
apps in the same way (selectModes): those that have, between them,
every tuple of strength providers of different roles and values of
different mode options that one of those apps has and no app of the
covering has, which are the tuples with a value other than the first.
A pairwise covering then has every value of a mode option with every
provider of a role that has several, and with every value of another
mode option. Without a strength, it takes all of those apps.
- Inheritance
- Implemented types
- Available extensions
Values
- pairwise → const EveryModuleCombinations
-
Every pair of providers of two different roles in one of the apps: a few apps, which grow with the square of the number of providers of a role and hardly with the number of roles, such as at most 15 of the 243 apps of 5 roles of 3 providers.
const EveryModuleCombinations('pairwise', 2) - threeWise → const EveryModuleCombinations
-
Every triple of providers of three different roles in one of the apps, such as at most 60 of the 243 apps of 5 roles of 3 providers.
const EveryModuleCombinations('3-wise', 3) - all → const EveryModuleCombinations
-
Every app: the product of the numbers of providers of the roles.
const EveryModuleCombinations('all', null)
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- index → int
-
A numeric identifier for the enumerated value.
no setterinherited
- name → String
-
Available on Enum, provided by the EnumName extension
The name of the enum value.no setter - option → String
-
The value of the option
--combinationsof the matrix tools that selects these apps.final - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- strength → int?
-
The number of providers of different roles, and of values of
different mode options, of each tuple that one of the apps must have,
or
nullfor every app.final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
problemsOf(
List< MatrixApp> selected) → List<String> -
The problems of
selected, the apps that select took: for a name, that no app has it.override -
select(
List< MatrixApp> apps, List<SmfModule> modules) → List<MatrixApp> -
The apps of
apps, apps with every module ofmodulessuch as those of everyModuleAppsOf, that the selection takes, in their order.override -
selectModes(
List< MatrixApp> modes, List<MatrixApp> selected, List<SmfModule> modules) → List<MatrixApp> -
The apps of
modes, the apps with every module ofmodulesfor the other values of the mode options of their roles (modeAppsOf), that the selection takes next toselected, the apps that select took, in their order.override -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
parse(
String option) → EveryModuleCombinations? -
The combinations that the value
optionof--combinationsselects, ornullfor a value that selects none.
Constants
-
values
→ const List<
EveryModuleCombinations> - A constant List of the values in this enum, in order of their declaration.