MeshLib C Docs
Loading...
Searching...
No Matches
std_vector_double.h File Reference
#include <MRCMisc/common.h>
#include <MRCMisc/exports.h>
#include <stdbool.h>
#include <stddef.h>

Go to the source code of this file.

Functions

MRC_API MR_std_vector_doubleMR_std_vector_double_DefaultConstruct (void)
MRC_API MR_std_vector_doubleMR_std_vector_double_DefaultConstructArray (size_t num_elems)
MRC_API MR_std_vector_doubleMR_std_vector_double_ConstructFromAnother (MR_PassBy other_pass_by, MR_std_vector_double *other)
MRC_API void MR_std_vector_double_AssignFromAnother (MR_std_vector_double *_this, MR_PassBy other_pass_by, MR_std_vector_double *other)
MRC_API void MR_std_vector_double_Destroy (const MR_std_vector_double *_this)
 Destroys a heap-allocated instance of MR_std_vector_double. Does nothing if the pointer is null.
MRC_API void MR_std_vector_double_DestroyArray (const MR_std_vector_double *_this)
 Destroys a heap-allocated array of MR_std_vector_double. Does nothing if the pointer is null.
MRC_API const MR_std_vector_doubleMR_std_vector_double_OffsetPtr (const MR_std_vector_double *ptr, ptrdiff_t i)
MRC_API MR_std_vector_doubleMR_std_vector_double_OffsetMutablePtr (MR_std_vector_double *ptr, ptrdiff_t i)
MRC_API MR_std_vector_doubleMR_std_vector_double_ConstructFromRange (const double *ptr, size_t size)
MRC_API void MR_std_vector_double_AssignFromRange (MR_std_vector_double *_this, const double *ptr, size_t size)
MRC_API size_t MR_std_vector_double_size (const MR_std_vector_double *_this)
MRC_API bool MR_std_vector_double_empty (const MR_std_vector_double *_this)
MRC_API void MR_std_vector_double_resize (MR_std_vector_double *_this, size_t new_size)
MRC_API void MR_std_vector_double_resize_with_default_value (MR_std_vector_double *_this, size_t new_size, double value)
MRC_API void MR_std_vector_double_clear (MR_std_vector_double *_this)
MRC_API size_t MR_std_vector_double_capacity (const MR_std_vector_double *_this)
MRC_API void MR_std_vector_double_reserve (MR_std_vector_double *_this, size_t new_capacity)
MRC_API void MR_std_vector_double_shrink_to_fit (MR_std_vector_double *_this)
MRC_API const double * MR_std_vector_double_at (const MR_std_vector_double *_this, size_t i)
MRC_API double * MR_std_vector_double_at_mut (MR_std_vector_double *_this, size_t i)
MRC_API const double * MR_std_vector_double_front (const MR_std_vector_double *_this)
MRC_API double * MR_std_vector_double_front_mut (MR_std_vector_double *_this)
MRC_API const double * MR_std_vector_double_back (const MR_std_vector_double *_this)
MRC_API double * MR_std_vector_double_back_mut (MR_std_vector_double *_this)
MRC_API const double * MR_std_vector_double_data (const MR_std_vector_double *_this)
MRC_API double * MR_std_vector_double_data_mut (MR_std_vector_double *_this)
MRC_API void MR_std_vector_double_push_back (MR_std_vector_double *_this, double new_elem)
MRC_API void MR_std_vector_double_pop_back (MR_std_vector_double *_this)
MRC_API void MR_std_vector_double_insert (MR_std_vector_double *_this, size_t position, double new_elem)
MRC_API void MR_std_vector_double_erase (MR_std_vector_double *_this, size_t position)
MRC_API void MR_std_vector_double_insert_at_mutable_iter (MR_std_vector_double *_this, const MR_std_vector_double_iterator *position, double new_elem)
MRC_API void MR_std_vector_double_erase_at_mutable_iter (MR_std_vector_double *_this, const MR_std_vector_double_iterator *position)
MRC_API void MR_std_vector_double_insert_at_iter (MR_std_vector_double *_this, const MR_std_vector_double_const_iterator *position, double new_elem)
MRC_API void MR_std_vector_double_erase_at_iter (MR_std_vector_double *_this, const MR_std_vector_double_const_iterator *position)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_begin (const MR_std_vector_double *_this)
MRC_API bool MR_std_vector_double_is_begin (const MR_std_vector_double *_this, const MR_std_vector_double_const_iterator *iter)
MRC_API MR_std_vector_double_iteratorMR_std_vector_double_begin_mut (MR_std_vector_double *_this)
MRC_API bool MR_std_vector_double_is_begin_mut (const MR_std_vector_double *_this, const MR_std_vector_double_iterator *iter)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_end (const MR_std_vector_double *_this)
MRC_API bool MR_std_vector_double_is_end (const MR_std_vector_double *_this, const MR_std_vector_double_const_iterator *iter)
MRC_API MR_std_vector_double_iteratorMR_std_vector_double_end_mut (MR_std_vector_double *_this)
MRC_API bool MR_std_vector_double_is_end_mut (const MR_std_vector_double *_this, const MR_std_vector_double_iterator *iter)
MRC_API ptrdiff_t MR_std_vector_double_to_index (const MR_std_vector_double *_this, const MR_std_vector_double_const_iterator *iter)
MRC_API ptrdiff_t MR_std_vector_double_to_index_mut (const MR_std_vector_double *_this, const MR_std_vector_double_iterator *iter)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_const_iterator_DefaultConstruct (void)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_const_iterator_DefaultConstructArray (size_t num_elems)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_const_iterator_ConstructFromAnother (const MR_std_vector_double_const_iterator *other)
MRC_API void MR_std_vector_double_const_iterator_AssignFromAnother (MR_std_vector_double_const_iterator *_this, const MR_std_vector_double_const_iterator *other)
MRC_API void MR_std_vector_double_const_iterator_Destroy (const MR_std_vector_double_const_iterator *_this)
 Destroys a heap-allocated instance of MR_std_vector_double_const_iterator. Does nothing if the pointer is null.
MRC_API void MR_std_vector_double_const_iterator_DestroyArray (const MR_std_vector_double_const_iterator *_this)
 Destroys a heap-allocated array of MR_std_vector_double_const_iterator. Does nothing if the pointer is null.
MRC_API const MR_std_vector_double_const_iteratorMR_std_vector_double_const_iterator_OffsetPtr (const MR_std_vector_double_const_iterator *ptr, ptrdiff_t i)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_const_iterator_OffsetMutablePtr (MR_std_vector_double_const_iterator *ptr, ptrdiff_t i)
MRC_API MR_std_vector_double_const_iteratorMR_std_vector_double_const_iterator_from_mutable (const MR_std_vector_double_iterator *iter)
MRC_API MR_std_vector_double_iteratorMR_std_vector_double_iterator_DefaultConstruct (void)
MRC_API MR_std_vector_double_iteratorMR_std_vector_double_iterator_DefaultConstructArray (size_t num_elems)
MRC_API MR_std_vector_double_iteratorMR_std_vector_double_iterator_ConstructFromAnother (const MR_std_vector_double_iterator *other)
MRC_API void MR_std_vector_double_iterator_AssignFromAnother (MR_std_vector_double_iterator *_this, const MR_std_vector_double_iterator *other)
MRC_API void MR_std_vector_double_iterator_Destroy (const MR_std_vector_double_iterator *_this)
 Destroys a heap-allocated instance of MR_std_vector_double_iterator. Does nothing if the pointer is null.
MRC_API void MR_std_vector_double_iterator_DestroyArray (const MR_std_vector_double_iterator *_this)
 Destroys a heap-allocated array of MR_std_vector_double_iterator. Does nothing if the pointer is null.
MRC_API const MR_std_vector_double_iteratorMR_std_vector_double_iterator_OffsetPtr (const MR_std_vector_double_iterator *ptr, ptrdiff_t i)
MRC_API MR_std_vector_double_iteratorMR_std_vector_double_iterator_OffsetMutablePtr (MR_std_vector_double_iterator *ptr, ptrdiff_t i)
MRC_API const double * MR_std_vector_double_const_iterator_deref (const MR_std_vector_double_const_iterator *_this)
MRC_API void MR_std_vector_double_const_iterator_incr (MR_std_vector_double_const_iterator *_this)
MRC_API void MR_std_vector_double_const_iterator_decr (MR_std_vector_double_const_iterator *_this)
MRC_API void MR_std_vector_double_const_iterator_add_assign (MR_std_vector_double_const_iterator *_this, ptrdiff_t delta)
MRC_API ptrdiff_t MR_sub_MR_std_vector_double_const_iterator (const MR_std_vector_double_const_iterator *a, const MR_std_vector_double_const_iterator *b)
MRC_API bool MR_equal_MR_std_vector_double_const_iterator (const MR_std_vector_double_const_iterator *a, const MR_std_vector_double_const_iterator *b)
MRC_API double * MR_std_vector_double_iterator_deref (const MR_std_vector_double_iterator *_this)
MRC_API void MR_std_vector_double_iterator_incr (MR_std_vector_double_iterator *_this)
MRC_API void MR_std_vector_double_iterator_decr (MR_std_vector_double_iterator *_this)
MRC_API void MR_std_vector_double_iterator_add_assign (MR_std_vector_double_iterator *_this, ptrdiff_t delta)
MRC_API ptrdiff_t MR_sub_MR_std_vector_double_iterator (const MR_std_vector_double_iterator *a, const MR_std_vector_double_iterator *b)
MRC_API bool MR_equal_MR_std_vector_double_iterator (const MR_std_vector_double_iterator *a, const MR_std_vector_double_iterator *b)

Function Documentation

◆ MR_equal_MR_std_vector_double_const_iterator()

MRC_API bool MR_equal_MR_std_vector_double_const_iterator ( const MR_std_vector_double_const_iterator * a,
const MR_std_vector_double_const_iterator * b )

Compares two const iterators for equality. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single object.

◆ MR_equal_MR_std_vector_double_iterator()

MRC_API bool MR_equal_MR_std_vector_double_iterator ( const MR_std_vector_double_iterator * a,
const MR_std_vector_double_iterator * b )

Compares two mutable iterators for equality. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single object.

◆ MR_std_vector_double_AssignFromAnother()

MRC_API void MR_std_vector_double_AssignFromAnother ( MR_std_vector_double * _this,
MR_PassBy other_pass_by,
MR_std_vector_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 held previously.

◆ MR_std_vector_double_AssignFromRange()

MRC_API void MR_std_vector_double_AssignFromRange ( MR_std_vector_double * _this,
const double * ptr,
size_t size )

Assign from a range of elements, overwriting previous contents. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_at()

MRC_API const double * MR_std_vector_double_at ( const MR_std_vector_double * _this,
size_t i )

The element at a specific index, read-only. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_at_mut()

MRC_API double * MR_std_vector_double_at_mut ( MR_std_vector_double * _this,
size_t i )

The element at a specific index, mutable. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_back()

MRC_API const double * MR_std_vector_double_back ( const MR_std_vector_double * _this)

The last element or null if empty, read-only. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_back_mut()

MRC_API double * MR_std_vector_double_back_mut ( MR_std_vector_double * _this)

The last element or null if empty, mutable. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_begin()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_begin ( const MR_std_vector_double * _this)

The begin iterator, const. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_const_iterator_Destroy() to free it when you're done using it. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_begin_mut()

MRC_API MR_std_vector_double_iterator * MR_std_vector_double_begin_mut ( MR_std_vector_double * _this)

The begin iterator, mutable. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_iterator_Destroy() to free it when you're done using it. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_capacity()

MRC_API size_t MR_std_vector_double_capacity ( const MR_std_vector_double * _this)

The memory capacity, measued in the number of elements. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_clear()

MRC_API void MR_std_vector_double_clear ( MR_std_vector_double * _this)

Removes all elements from the container. Parameter _this can not be null. It is a single object. When this function is called, this object will drop any object references it held previously.

◆ MR_std_vector_double_const_iterator_add_assign()

MRC_API void MR_std_vector_double_const_iterator_add_assign ( MR_std_vector_double_const_iterator * _this,
ptrdiff_t delta )

Increments or decrements a const iterator by the specific amount. Completes in constant time. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_const_iterator_AssignFromAnother()

MRC_API void MR_std_vector_double_const_iterator_AssignFromAnother ( MR_std_vector_double_const_iterator * _this,
const MR_std_vector_double_const_iterator * 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. Parameter other 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 held previously.

◆ MR_std_vector_double_const_iterator_ConstructFromAnother()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_const_iterator_ConstructFromAnother ( const MR_std_vector_double_const_iterator * other)

Constructs a copy of another instance. The source remains alive. Parameter other can not be null. It is a single object. 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_vector_double_const_iterator_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_vector_double_const_iterator_decr()

MRC_API void MR_std_vector_double_const_iterator_decr ( MR_std_vector_double_const_iterator * _this)

Decrements a const iterator. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_const_iterator_DefaultConstruct()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_const_iterator_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_const_iterator_Destroy() to free it when you're done using it.

◆ MR_std_vector_double_const_iterator_DefaultConstructArray()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_const_iterator_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_vector_double_const_iterator_DestroyArray(). Use MR_std_vector_double_const_iterator_OffsetMutablePtr() and MR_std_vector_double_const_iterator_OffsetPtr() to access the array elements.

◆ MR_std_vector_double_const_iterator_deref()

MRC_API const double * MR_std_vector_double_const_iterator_deref ( const MR_std_vector_double_const_iterator * _this)

Dereferences a const iterator. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. The reference to things referred to by this object (if any) might be preserved as the return value.

◆ MR_std_vector_double_const_iterator_Destroy()

MRC_API void MR_std_vector_double_const_iterator_Destroy ( const MR_std_vector_double_const_iterator * _this)

Destroys a heap-allocated instance of MR_std_vector_double_const_iterator. Does nothing if the pointer is null.

◆ MR_std_vector_double_const_iterator_DestroyArray()

MRC_API void MR_std_vector_double_const_iterator_DestroyArray ( const MR_std_vector_double_const_iterator * _this)

Destroys a heap-allocated array of MR_std_vector_double_const_iterator. Does nothing if the pointer is null.

◆ MR_std_vector_double_const_iterator_from_mutable()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_const_iterator_from_mutable ( const MR_std_vector_double_iterator * iter)

Makes a const iterator from a mutable one. Parameter iter can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_const_iterator_Destroy() to free it when you're done using it.

◆ MR_std_vector_double_const_iterator_incr()

MRC_API void MR_std_vector_double_const_iterator_incr ( MR_std_vector_double_const_iterator * _this)

Increments a const iterator. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_const_iterator_OffsetMutablePtr()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_const_iterator_OffsetMutablePtr ( MR_std_vector_double_const_iterator * 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.

◆ MR_std_vector_double_const_iterator_OffsetPtr()

MRC_API const MR_std_vector_double_const_iterator * MR_std_vector_double_const_iterator_OffsetPtr ( const MR_std_vector_double_const_iterator * 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.

◆ MR_std_vector_double_ConstructFromAnother()

MRC_API MR_std_vector_double * MR_std_vector_double_ConstructFromAnother ( MR_PassBy other_pass_by,
MR_std_vector_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_vector_double_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_vector_double_ConstructFromRange()

MRC_API MR_std_vector_double * MR_std_vector_double_ConstructFromRange ( const double * ptr,
size_t size )

Construct from a range of elements. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_Destroy() to free it when you're done using it.

◆ MR_std_vector_double_data()

MRC_API const double * MR_std_vector_double_data ( const MR_std_vector_double * _this)

Returns a pointer to the continuous storage that holds all elements, read-only. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_data_mut()

MRC_API double * MR_std_vector_double_data_mut ( MR_std_vector_double * _this)

Returns a pointer to the continuous storage that holds all elements, mutable. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_DefaultConstruct()

MRC_API MR_std_vector_double * MR_std_vector_double_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_Destroy() to free it when you're done using it.

◆ MR_std_vector_double_DefaultConstructArray()

MRC_API MR_std_vector_double * MR_std_vector_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_vector_double_DestroyArray(). Use MR_std_vector_double_OffsetMutablePtr() and MR_std_vector_double_OffsetPtr() to access the array elements.

◆ MR_std_vector_double_Destroy()

MRC_API void MR_std_vector_double_Destroy ( const MR_std_vector_double * _this)

Destroys a heap-allocated instance of MR_std_vector_double. Does nothing if the pointer is null.

◆ MR_std_vector_double_DestroyArray()

MRC_API void MR_std_vector_double_DestroyArray ( const MR_std_vector_double * _this)

Destroys a heap-allocated array of MR_std_vector_double. Does nothing if the pointer is null.

◆ MR_std_vector_double_empty()

MRC_API bool MR_std_vector_double_empty ( const MR_std_vector_double * _this)

Returns true if the size is zero. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_end()

MRC_API MR_std_vector_double_const_iterator * MR_std_vector_double_end ( const MR_std_vector_double * _this)

The end iterator, const. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_const_iterator_Destroy() to free it when you're done using it. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_end_mut()

MRC_API MR_std_vector_double_iterator * MR_std_vector_double_end_mut ( MR_std_vector_double * _this)

The end iterator, mutable. Parameter _this can not be null. It is a single object. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_iterator_Destroy() to free it when you're done using it. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_erase()

MRC_API void MR_std_vector_double_erase ( MR_std_vector_double * _this,
size_t position )

Erases the element at the specified position. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_erase_at_iter()

MRC_API void MR_std_vector_double_erase_at_iter ( MR_std_vector_double * _this,
const MR_std_vector_double_const_iterator * position )

Erases the element at the specified position. This version takes the position in form of a const iterator, that's the only difference. Parameter _this can not be null. It is a single object. Parameter position can not be null. It is a single object.

◆ MR_std_vector_double_erase_at_mutable_iter()

MRC_API void MR_std_vector_double_erase_at_mutable_iter ( MR_std_vector_double * _this,
const MR_std_vector_double_iterator * position )

Erases the element at the specified position. Parameter _this can not be null. It is a single object. Parameter position can not be null. It is a single object.

◆ MR_std_vector_double_front()

MRC_API const double * MR_std_vector_double_front ( const MR_std_vector_double * _this)

The first element or null if empty, read-only. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_front_mut()

MRC_API double * MR_std_vector_double_front_mut ( MR_std_vector_double * _this)

The first element or null if empty, mutable. Parameter _this can not be null. It is a single object. The reference to this object might be preserved as the return value.

◆ MR_std_vector_double_insert()

MRC_API void MR_std_vector_double_insert ( MR_std_vector_double * _this,
size_t position,
double new_elem )

Inserts a new element right before the specified position. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_insert_at_iter()

MRC_API void MR_std_vector_double_insert_at_iter ( MR_std_vector_double * _this,
const MR_std_vector_double_const_iterator * position,
double new_elem )

Inserts a new element right before the specified position. This version takes the position in form of a const iterator, that's the only difference. Parameter _this can not be null. It is a single object. Parameter position can not be null. It is a single object.

◆ MR_std_vector_double_insert_at_mutable_iter()

MRC_API void MR_std_vector_double_insert_at_mutable_iter ( MR_std_vector_double * _this,
const MR_std_vector_double_iterator * position,
double new_elem )

Inserts a new element right before the specified position. Parameter _this can not be null. It is a single object. Parameter position can not be null. It is a single object.

◆ MR_std_vector_double_is_begin()

MRC_API bool MR_std_vector_double_is_begin ( const MR_std_vector_double * _this,
const MR_std_vector_double_const_iterator * iter )

Tests whether a const iterator is the begin iterator. Parameter _this can not be null. It is a single object. Parameter iter can not be null. It is a single object.

◆ MR_std_vector_double_is_begin_mut()

MRC_API bool MR_std_vector_double_is_begin_mut ( const MR_std_vector_double * _this,
const MR_std_vector_double_iterator * iter )

Tests whether a mutable iterator is the begin iterator. Parameter _this can not be null. It is a single object. Parameter iter can not be null. It is a single object.

◆ MR_std_vector_double_is_end()

MRC_API bool MR_std_vector_double_is_end ( const MR_std_vector_double * _this,
const MR_std_vector_double_const_iterator * iter )

Tests whether a const iterator is the end iterator. Parameter _this can not be null. It is a single object. Parameter iter can not be null. It is a single object.

◆ MR_std_vector_double_is_end_mut()

MRC_API bool MR_std_vector_double_is_end_mut ( const MR_std_vector_double * _this,
const MR_std_vector_double_iterator * iter )

Tests whether a mutable iterator is the end iterator. Parameter _this can not be null. It is a single object. Parameter iter can not be null. It is a single object.

◆ MR_std_vector_double_iterator_add_assign()

MRC_API void MR_std_vector_double_iterator_add_assign ( MR_std_vector_double_iterator * _this,
ptrdiff_t delta )

Increments or decrements a mutable iterator by the specific amount. Completes in constant time. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_iterator_AssignFromAnother()

MRC_API void MR_std_vector_double_iterator_AssignFromAnother ( MR_std_vector_double_iterator * _this,
const MR_std_vector_double_iterator * 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. Parameter other 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 held previously.

◆ MR_std_vector_double_iterator_ConstructFromAnother()

MRC_API MR_std_vector_double_iterator * MR_std_vector_double_iterator_ConstructFromAnother ( const MR_std_vector_double_iterator * other)

Constructs a copy of another instance. The source remains alive. Parameter other can not be null. It is a single object. 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_vector_double_iterator_Destroy() to free it when you're done using it. When this function is called, this object will drop any object references it held previously.

◆ MR_std_vector_double_iterator_decr()

MRC_API void MR_std_vector_double_iterator_decr ( MR_std_vector_double_iterator * _this)

Decrements a mutable iterator. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_iterator_DefaultConstruct()

MRC_API MR_std_vector_double_iterator * MR_std_vector_double_iterator_DefaultConstruct ( void )

Constructs an empty (default-constructed) instance. Never returns null. Returns an instance allocated on the heap! Must call MR_std_vector_double_iterator_Destroy() to free it when you're done using it.

◆ MR_std_vector_double_iterator_DefaultConstructArray()

MRC_API MR_std_vector_double_iterator * MR_std_vector_double_iterator_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_vector_double_iterator_DestroyArray(). Use MR_std_vector_double_iterator_OffsetMutablePtr() and MR_std_vector_double_iterator_OffsetPtr() to access the array elements.

◆ MR_std_vector_double_iterator_deref()

MRC_API double * MR_std_vector_double_iterator_deref ( const MR_std_vector_double_iterator * _this)

Dereferences a mutable iterator. Parameter _this can not be null. It is a single object. The returned pointer will never be null. It is non-owning, do NOT destroy it. The reference to things referred to by this object (if any) might be preserved as the return value.

◆ MR_std_vector_double_iterator_Destroy()

MRC_API void MR_std_vector_double_iterator_Destroy ( const MR_std_vector_double_iterator * _this)

Destroys a heap-allocated instance of MR_std_vector_double_iterator. Does nothing if the pointer is null.

◆ MR_std_vector_double_iterator_DestroyArray()

MRC_API void MR_std_vector_double_iterator_DestroyArray ( const MR_std_vector_double_iterator * _this)

Destroys a heap-allocated array of MR_std_vector_double_iterator. Does nothing if the pointer is null.

◆ MR_std_vector_double_iterator_incr()

MRC_API void MR_std_vector_double_iterator_incr ( MR_std_vector_double_iterator * _this)

Increments a mutable iterator. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_iterator_OffsetMutablePtr()

MRC_API MR_std_vector_double_iterator * MR_std_vector_double_iterator_OffsetMutablePtr ( MR_std_vector_double_iterator * 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.

◆ MR_std_vector_double_iterator_OffsetPtr()

MRC_API const MR_std_vector_double_iterator * MR_std_vector_double_iterator_OffsetPtr ( const MR_std_vector_double_iterator * 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.

◆ MR_std_vector_double_OffsetMutablePtr()

MRC_API MR_std_vector_double * MR_std_vector_double_OffsetMutablePtr ( MR_std_vector_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.

◆ MR_std_vector_double_OffsetPtr()

MRC_API const MR_std_vector_double * MR_std_vector_double_OffsetPtr ( const MR_std_vector_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.

◆ MR_std_vector_double_pop_back()

MRC_API void MR_std_vector_double_pop_back ( MR_std_vector_double * _this)

Removes one element from the end. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_push_back()

MRC_API void MR_std_vector_double_push_back ( MR_std_vector_double * _this,
double new_elem )

Inserts a new element at the end. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_reserve()

MRC_API void MR_std_vector_double_reserve ( MR_std_vector_double * _this,
size_t new_capacity )

Reserves memory for a certain number of elements. Never shrinks the memory. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_resize()

MRC_API void MR_std_vector_double_resize ( MR_std_vector_double * _this,
size_t new_size )

Resizes the container. The new elements if any are zeroed. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_resize_with_default_value()

MRC_API void MR_std_vector_double_resize_with_default_value ( MR_std_vector_double * _this,
size_t new_size,
double value )

Resizes the container. The new elements if any are set to the specified value. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_shrink_to_fit()

MRC_API void MR_std_vector_double_shrink_to_fit ( MR_std_vector_double * _this)

Shrinks the capacity to match the size. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_size()

MRC_API size_t MR_std_vector_double_size ( const MR_std_vector_double * _this)

The number of elements. Parameter _this can not be null. It is a single object.

◆ MR_std_vector_double_to_index()

MRC_API ptrdiff_t MR_std_vector_double_to_index ( const MR_std_vector_double * _this,
const MR_std_vector_double_const_iterator * iter )

Convert a const iterator to an index. Parameter _this can not be null. It is a single object. Parameter iter can not be null. It is a single object.

◆ MR_std_vector_double_to_index_mut()

MRC_API ptrdiff_t MR_std_vector_double_to_index_mut ( const MR_std_vector_double * _this,
const MR_std_vector_double_iterator * iter )

Convert a mutable iterator to an index. Parameter _this can not be null. It is a single object. Parameter iter can not be null. It is a single object.

◆ MR_sub_MR_std_vector_double_const_iterator()

MRC_API ptrdiff_t MR_sub_MR_std_vector_double_const_iterator ( const MR_std_vector_double_const_iterator * a,
const MR_std_vector_double_const_iterator * b )

Computes the signed difference between two const iterators. Completes in constant time. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single object.

◆ MR_sub_MR_std_vector_double_iterator()

MRC_API ptrdiff_t MR_sub_MR_std_vector_double_iterator ( const MR_std_vector_double_iterator * a,
const MR_std_vector_double_iterator * b )

Computes the signed difference between two mutable iterators. Completes in constant time. Parameter a can not be null. It is a single object. Parameter b can not be null. It is a single object.