opencv-binding-generator 0.27.0

Binding generator for opencv crate
Documentation
extern "C" {
	void cv_{{rust_localalias}}_delete({{cpp_full}}* instance) {
		delete instance;
	}

	{{cpp_extern_return}} cv_{{rust_localalias}}_new() {
		return new {{cpp_full}}();
	}

	size_t cv_{{rust_localalias}}_len(const {{cpp_full}}* instance) {
		return instance->size();
	}

	bool cv_{{rust_localalias}}_is_empty(const {{cpp_full}}* instance) {
		return instance->empty();
	}

	size_t cv_{{rust_localalias}}_capacity(const {{cpp_full}}* instance) {
		return instance->capacity();
	}

	void cv_{{rust_localalias}}_shrink_to_fit({{cpp_full}}* instance) {
		instance->shrink_to_fit();
	}

	void cv_{{rust_localalias}}_reserve({{cpp_full}}* instance, size_t additional) {
		instance->reserve(instance->size() + additional);
	}

	void cv_{{rust_localalias}}_remove({{cpp_full}}* instance, size_t index) {
		instance->erase(instance->begin() + index);
	}

	void cv_{{rust_localalias}}_swap({{cpp_full}}* instance, size_t index1, size_t index2) {
		{{swap_func}}((*instance)[index1], (*instance)[index2]);
	}

	void cv_{{rust_localalias}}_clear({{cpp_full}}* instance) {
		instance->clear();
	}

	void cv_{{rust_localalias}}_push({{cpp_full}}* instance, {{inner_cpp_func_decl}}) {
		instance->push_back({{inner_cpp_func_call}});
	}

	void cv_{{rust_localalias}}_insert({{cpp_full}}* instance, size_t index, {{inner_cpp_func_decl}}) {
		instance->insert(instance->begin() + index, {{inner_cpp_func_call}});
	}

	{{inner_cpp_extern_return_wrapper}} cv_{{rust_localalias}}_get(const {{cpp_full}}* instance, size_t index) {
		return Ok<{{inner_cpp_extern_return}}>({{prefix}}(*instance)[index]{{suffix}});
	}

	void cv_{{rust_localalias}}_set({{cpp_full}}* instance, size_t index, {{inner_cpp_func_decl}}) {
		(*instance)[index] = {{inner_cpp_func_call}};
	}

	{{exports}}
}