Go to the source code of this file.
Typedefs | |
| typedef struct MR_std_function_double_from_double_double | MR_std_function_double_from_double_double |
Stores a functor of type: double(double, double). Possibly stateful. Supported MR_PassBy modes: MR_PassBy_DefaultConstruct, MR_PassBy_Copy, MR_PassBy_Move (and MR_PassBy_DefaultArgument and MR_PassBy_NoObject if supported by the callee).
| MRC_API void MR_std_function_double_from_double_double_Assign | ( | MR_std_function_double_from_double_double * | _this, |
| double(* | func )(double _1, double _2) ) |
Assign a stateless function. Parameter _this can not be null. It is a single object.
| MRC_API void MR_std_function_double_from_double_double_AssignFromAnother | ( | MR_std_function_double_from_double_double * | _this, |
| MR_PassBy | other_pass_by, | ||
| MR_std_function_double_from_double_double * | other ) |
Assigns the contents from another instance. Both objects remain alive after the call. Parameter _this can not be null. It is a single object. The reference to the parameter other might be preserved in this object. When this function is called, this object will drop any object references it had previously.
| MRC_API void MR_std_function_double_from_double_double_AssignWithDataPtr | ( | MR_std_function_double_from_double_double * | _this, |
| double(* | func )(double _1, double _2, void *_userdata), | ||
| void * | userdata, | ||
| void(* | userdata_callback )(void **_this_userdata, void *_other_userdata) ) |
Assign a function with an extra user data pointer. Parameter _this can not be null. It is a single object. The reference to the parameter userdata might be preserved in this object. When this function is called, this object will drop any object references it had previously. Parameter userdata_callback can be null. Pass null if you don't need custom behavior when destroying and/or copying the functor. How to use userdata_callback: The _this_userdata parameter will never be null. If *_this_userdata is non-null and _other_userdata is null, the functor is being destroyed. Perform any cleanup if needed. If *_this_userdata is null and _other_userdata is non-null, a copy of the functor is being constructed. Perform copying if needed and write the new userdata to *_this_userdata. If *_this_userdata is non-null and _other_userdata is non-null, the functor is being assigned. The simplest option is to destroy *_this_userdata first, and then behave as if it was null.
| MRC_API MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_ConstructFromAnother | ( | MR_PassBy | other_pass_by, |
| MR_std_function_double_from_double_double * | other ) |
Constructs a copy of another instance. The source remains alive. The reference to the parameter other might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_function_double_from_double_double_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously.
| MRC_API MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_ConstructStateless | ( | double(* | func )(double _1, double _2) | ) |
Construct a stateless function. Never returns null. Returns an instance allocated on the heap! Must call MR_std_function_double_from_double_double_Destroy() to free it when you're done using it.
| MRC_API MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_ConstructWithDataPtr | ( | double(* | func )(double _1, double _2, void *_userdata), |
| void * | userdata, | ||
| void(* | userdata_callback )(void **_this_userdata, void *_other_userdata) ) |
Construct a function with an extra user data pointer. The reference to the parameter userdata might be preserved in the constructed object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_function_double_from_double_double_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it had previously. Parameter userdata_callback can be null. Pass null if you don't need custom behavior when destroying and/or copying the functor. How to use userdata_callback: The _this_userdata parameter will never be null. If *_this_userdata is non-null and _other_userdata is null, the functor is being destroyed. Perform any cleanup if needed. If *_this_userdata is null and _other_userdata is non-null, a copy of the functor is being constructed. Perform copying if needed and write the new userdata to *_this_userdata. If *_this_userdata is non-null and _other_userdata is non-null, the functor is being assigned. The simplest option is to destroy *_this_userdata first, and then behave as if it was null.
| MRC_API MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_DefaultConstruct | ( | void | ) |
Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_std_function_double_from_double_double_Destroy() to free it when you're done using it.
| MRC_API MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_DefaultConstructArray | ( | size_t | num_elems | ) |
Constructs an array of empty (default-constructed) instances, of the specified size. Will never return null. The array must be destroyed using MR_std_function_double_from_double_double_DestroyArray(). Use MR_std_function_double_from_double_double_OffsetMutablePtr() and MR_std_function_double_from_double_double_OffsetPtr() to access the array elements.
| MRC_API void MR_std_function_double_from_double_double_Destroy | ( | const MR_std_function_double_from_double_double * | _this | ) |
Destroys a heap-allocated instance of MR_std_function_double_from_double_double. Does nothing if the pointer is null.
| MRC_API void MR_std_function_double_from_double_double_DestroyArray | ( | const MR_std_function_double_from_double_double * | _this | ) |
Destroys a heap-allocated array of MR_std_function_double_from_double_double. Does nothing if the pointer is null.
| MRC_API MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_OffsetMutablePtr | ( | MR_std_function_double_from_double_double * | ptr, |
| ptrdiff_t | i ) |
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.
| MRC_API const MR_std_function_double_from_double_double * MR_std_function_double_from_double_double_OffsetPtr | ( | const MR_std_function_double_from_double_double * | ptr, |
| ptrdiff_t | i ) |
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the pointer points to an array element. The reference to the parameter ptr might be preserved in the return value.