aermicioi.aedi.util.traits.partial

Members

Aliases

failable
alias failable(alias pred, alias response) = if_!(partialPrefixed!(compiles, pred), pred, response)

Execute pred, if it does not have any compiler errors.

onFail
alias onFail(alias pred) = if_!(isTrue, isTrue, chain!(get!0, partialPrefixed!(tee, pred)))
Undocumented in source.
onFailPrint
alias onFailPrint(string error) = onFail!(partialSuffixed!(pragmaMsg, error))
Undocumented in source.
partialPrefixed
alias partialPrefixed = ApplyLeft
Undocumented in source.
partialSuffixed
alias partialSuffixed = ApplyRight
Undocumented in source.

Functions

curry
auto curry(Dg func, Args args)
Undocumented in source. Be warned that the author may not have intended to support it.

Templates

allSatisfied
template allSatisfied(alias T, Predicates...)
Undocumented in source.
anySatisfied
template anySatisfied(alias T, Predicates...)
Undocumented in source.
applyArgs
template applyArgs(Args...)

Instantiate a template with Args, and apply them to pred.

chain
template chain(predicates...)

Chain a set of templates, and apply Args as input.

eq
template eq(alias first)

Instantiate a template that will check equality of first with second

get
template get(size_t index)
Undocumented in source.
gt
template gt(alias first)

Instantiate a template that will check if first is greater than second

gte
template gte(alias first)

Instantiate a template that will check if first is greater or equal than second

if_
template if_(alias pred, alias trueBranch, alias falseBranch)

Execute trueBranch or falseBranch depending on pred!Args bool result.

lt
template lt(alias first)

Instantiate a template that will check if first is less than second

lte
template lte(alias first)

Instantiate a template that will check if first is less or equal than second

partial
template partial(Preds...)

Apply to Preds a set of Args.

partialPrefixed
template partialPrefixed(alias pred, Args...)

Prefix a template with a set of arguments.

partialSuffixed
template partialSuffixed(alias pred, Args...)

Suffix a template with a set of arguments.

reverse
template reverse(args...)

Reverse the order of arguments.

staticAssert
template staticAssert(alias predicate, string error)
Undocumented in source.
tee
template tee(alias predicate, args...)
Undocumented in source.

Meta

License

Boost Software License - Version 1.0 - August 17th, 2003

Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following:

The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Authors

aermicioi