Skip to content

Commit

Permalink
Add documentation for EvaluatableFunctionObject
Browse files Browse the repository at this point in the history
  • Loading branch information
pfultz2 committed Oct 25, 2015
1 parent 07784c0 commit 6974e9c
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions doc/src/concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,30 @@ Given
| `f(args...)` | performs a function call |


NullaryFunctionObject
---------------------

Is an object with a `const` call operator that accepts no parameters:

```cpp
concept NullaryFunctionObject
{
auto operator()() const;
};
```

#### Requirements:

* `FunctionObject`

Given

* `f`, an object of type `const F`

| Expression | Requirements |
|------------|--------------------------|
| `f()` | performs a function call |

UnaryFunctionObject
-------------------

Expand Down Expand Up @@ -111,6 +135,36 @@ Given
|--------------|--------------------------|
| `f(args...)` | performs a function call |

EvaluatableFunctionObject
-------------------------

Is an object that is either a `NullaryFunctionObject`, or it is an `UnaryFuntionObject` that accepts the `identity` function as a parameter.

#### Requirements:

* `NullaryFunctionObject`

Given

* `f`, an object of type `const F`

| Expression | Requirements |
|------------|--------------------------|
| `f()` | performs a function call |

Or:

* `UnaryFuntionObject`

Given

* `f`, an object of type `const F`
* `identity`, which is the identity function

| Expression | Requirements |
|---------------|--------------------------|
| `f(identity)` | performs a function call |

Metafunction
------------

Expand Down

0 comments on commit 6974e9c

Please sign in to comment.