bolts.experimental.refraction

It is sometimes necessary to create a function which is an exact copy of another function. Or sometimes it is necessary to introduce a few variations, while carrying all the other aspects. Because of function attributes, parameter storage classes and user-defined attributes, this requires building a string mixin. In addition, the mixed-in code must refer only to local names, if it is to work across module boundaires.

This module facilitates the creation of such mixins.

Members

Functions

refract
immutable(Function) refract()

Return a Function object that captures all the aspects of Fun, using the value of localSymbol to represent the return and parameter types, and the UDAs.

refract
immutable(Function) refract()
Undocumented in source. Be warned that the author may not have intended to support it.
refract
immutable(Function)[] refract()
Undocumented in source. Be warned that the author may not have intended to support it.
refractParameter
immutable(Parameter) refractParameter()
Undocumented in source. Be warned that the author may not have intended to support it.

Structs

Function
struct Function
Undocumented in source.
Parameter
struct Parameter

A struct capturing all the properties of a function parameter.

Templates

ParameterAttribute
template ParameterAttribute(alias F, int i, int j)
Undocumented in source.

Meta

Authors

Jean-Louis Leroy