44 const Signature *signature_ref_ =
nullptr;
70 return signature_ref_->
params.size();
75 return signature_ref_->
params.index_range();
80 return signature_ref_->
params[param_index].type;
85 return signature_ref_->
params[param_index].name;
98 return *signature_ref_;
141inline ParamsBuilder::ParamsBuilder(
const MultiFunction &fn,
const IndexMask *mask)
142 : ParamsBuilder(fn.signature(), *mask)
149namespace mf = fn::multi_function;
StringRefNull name() const
ExecutionHints execution_hints() const
const Signature & signature() const
virtual std::string debug_name() const
virtual uint64_t hash() const
void set_signature(const Signature *signature)
ParamType param_type(int param_index) const
StringRefNull param_name(int param_index) const
virtual void call(const IndexMask &mask, Params params, Context context) const =0
virtual bool equals(const MultiFunction &) const
IndexRange param_indices() const
virtual ExecutionHints get_execution_hints() const
void call_auto(const IndexMask &mask, Params params, Context context) const
uint64_t get_default_hash(const T &v)
unsigned __int64 uint64_t
bool uniform_execution_time
const char * function_name
Vector< ParamInfo > params