Fabrique

A build language for complex systems

 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Pages
fabrique::dag::Callable Class Reference

A mixin type for something that can be called with parameters. More...

#include <Callable.h>

Inheritance diagram for fabrique::dag::Callable:
fabrique::dag::Function fabrique::dag::Rule

Public Member Functions

virtual ValuePtr Call (const ValueMap &arguments, DAGBuilder &, SourceRange=SourceRange::None()) const
 Call this function with (named) arguments.
 
const SharedPtrVec< Parameter > & parameters () const
 
bool hasParameterNamed (const std::string &) const
 
void CheckArguments (const ValueMap &args, const StringMap< SourceRange > &argLocations, const SourceRange &callLocation) const
 
template<class T >
StringMap< const T * > NameArguments (const UniqPtrVec< T > &v) const
 Name all of the arguments in v according to the rules for positional and keyword arguments.
 

Protected Types

typedef std::function
< ValuePtr(const ValueMap
&, DAGBuilder &, SourceRange)> 
Evaluator
 

Protected Member Functions

 Callable (const SharedPtrVec< Parameter > &, Evaluator)
 

Detailed Description

A mixin type for something that can be called with parameters.

Definition at line 57 of file Callable.h.


The documentation for this class was generated from the following files: