31 auto left_details = fetch_numeric_seed(group,
"left", version, options);
32 auto right_details = fetch_numeric_seed(group,
"right", version, options);
35 if (!are_dimensions_equal(left_details.dimensions, right_details.dimensions)) {
36 throw std::runtime_error(
"'left' and 'right' should have the same dimensions");
40 auto method = load_scalar_string_dataset(group,
"method");
42 if (!is_valid_arithmetic_operation(method)) {
43 throw std::runtime_error(
"unrecognized 'method' (" + method +
")");
47 left_details.type = determine_arithmetic_output_type(left_details.type, right_details.type, method);