1#ifndef CHIHAYA_BINARY_LOGIC_HPP
2#define CHIHAYA_BINARY_LOGIC_HPP
5#include "ritsuko/ritsuko.hpp"
6#include "ritsuko/hdf5/hdf5.hpp"
13#include "utils_logic.hpp"
14#include "utils_misc.hpp"
27namespace binary_logic {
38 auto left_details = internal_logic::fetch_seed(handle,
"left", version, options);
39 auto right_details = internal_logic::fetch_seed(handle,
"right", version, options);
42 if (!internal_misc::are_dimensions_equal(left_details.dimensions, right_details.dimensions)) {
43 throw std::runtime_error(
"'left' and 'right' should have the same dimensions");
47 auto method = internal_unary::load_method(handle);
49 if (!internal_logic::is_valid_operation(method)) {
50 throw std::runtime_error(
"unrecognized 'method' (" + method +
")");
54 left_details.type = BOOLEAN;
ArrayDetails validate(const H5::Group &handle, const ritsuko::Version &version, Options &options)
Definition: binary_logic.hpp:37
Namespace for all chihaya functions.
Definition: binary_arithmetic.hpp:22
Details about an array.
Definition: utils_public.hpp:36
Validation options.
Definition: utils_public.hpp:66
bool details_only
Definition: utils_public.hpp:71
Various public utilities.