diff options
| author | Joey Hess <joeyh@joeyh.name> | 2017-03-15 14:09:07 -0400 |
|---|---|---|
| committer | Joey Hess <joeyh@joeyh.name> | 2017-03-15 14:09:07 -0400 |
| commit | 52ca81661f156122a3a5d4a438fea83e067215ac (patch) | |
| tree | 2156d53d78dceb7e342b3dd365d7ab33e1ebd5d0 /src/Propellor/EnsureProperty.hs | |
| parent | 51e281911d683f833d4d71ad62f2b64a5f4a0cea (diff) | |
Property types changed to use a Maybe (Propellor Result). (API change)
* Property types changed to use a Maybe (Propellor Result). (API change)
* When Nothing needs to be done to ensure a property, propellor
will avoid displaying its description at all. The doNothing property
is an example of such a property.
This is mostly in preparation for Monoid instances for Property types, but
is's also nice that anything that uses doNothing will avoid printing out
any message at all. At least, I think it probably is. It might potentially
be confusing for something that sometimes takes an action and sometimes
resolves to doNothing and in either case has a description set to not
always show the description. If this did turn out to be confusing, the
change to doNothing could be reverted.
This commit was sponsored by Boyd Stephen Smith Jr. on Patreon.
Diffstat (limited to 'src/Propellor/EnsureProperty.hs')
| -rw-r--r-- | src/Propellor/EnsureProperty.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Propellor/EnsureProperty.hs b/src/Propellor/EnsureProperty.hs index 30dfd5ad..badc7293 100644 --- a/src/Propellor/EnsureProperty.hs +++ b/src/Propellor/EnsureProperty.hs @@ -46,7 +46,7 @@ ensureProperty => OuterMetaTypesWitness outer -> Property (MetaTypes inner) -> Propellor Result -ensureProperty _ = catchPropellor . getSatisfy +ensureProperty _ = maybe (pure NoChange) catchPropellor . getSatisfy -- The name of this was chosen to make type errors a bit more understandable. type family Cannot_ensureProperty_WithInfo (l :: [a]) :: Bool @@ -62,7 +62,7 @@ property' -> (OuterMetaTypesWitness metatypes -> Propellor Result) -> Property (MetaTypes metatypes) property' d a = - let p = Property sing d (a (outerMetaTypesWitness p)) mempty mempty + let p = Property sing d (Just (a (outerMetaTypesWitness p))) mempty mempty in p -- | Used to provide the metatypes of a Property to calls to |
