chromium/services/webnn/public/cpp/data_type_limits.cc

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "services/webnn/public/cpp/data_type_limits.h"

namespace webnn {

DataTypeLimits::DataTypeLimits(mojo::DefaultConstruct::Tag) {}

DataTypeLimits::DataTypeLimits(SupportedDataTypes input,
                               SupportedDataTypes constant,
                               SupportedDataTypes arg_min_max_input,
                               SupportedDataTypes arg_min_max_output,
                               SupportedDataTypes cast_input,
                               SupportedDataTypes clamp_input,
                               SupportedDataTypes concat_inputs,
                               SupportedDataTypes add_input,
                               SupportedDataTypes sub_input,
                               SupportedDataTypes mul_input,
                               SupportedDataTypes div_input,
                               SupportedDataTypes max_input,
                               SupportedDataTypes min_input,
                               SupportedDataTypes pow_input,
                               SupportedDataTypes equal_input,
                               SupportedDataTypes greater_input,
                               SupportedDataTypes greater_or_equal_input,
                               SupportedDataTypes lesser_input,
                               SupportedDataTypes lesser_or_equal_input,
                               SupportedDataTypes logical_not_input,
                               SupportedDataTypes logical_output,
                               SupportedDataTypes abs_input,
                               SupportedDataTypes ceil_input,
                               SupportedDataTypes cos_input,
                               SupportedDataTypes erf_input,
                               SupportedDataTypes exp_input,
                               SupportedDataTypes floor_input,
                               SupportedDataTypes identity_input,
                               SupportedDataTypes log_input,
                               SupportedDataTypes neg_input,
                               SupportedDataTypes reciprocal_input,
                               SupportedDataTypes sign_input,
                               SupportedDataTypes sin_input,
                               SupportedDataTypes sqrt_input,
                               SupportedDataTypes tan_input,
                               SupportedDataTypes elu_input,
                               SupportedDataTypes expand_input,
                               SupportedDataTypes gather_input,
                               SupportedDataTypes gather_indices,
                               SupportedDataTypes gather_elements_input,
                               SupportedDataTypes gather_elements_indices,
                               SupportedDataTypes gelu_input,
                               SupportedDataTypes gemm_input,
                               SupportedDataTypes hard_sigmoid_input,
                               SupportedDataTypes hard_swish_input,
                               SupportedDataTypes leaky_relu_input,
                               SupportedDataTypes linear_input,
                               SupportedDataTypes matmul_input,
                               SupportedDataTypes pad_input,
                               SupportedDataTypes average_pool2d_input,
                               SupportedDataTypes l2_pool2d_input,
                               SupportedDataTypes max_pool2d_input,
                               SupportedDataTypes prelu_input,
                               SupportedDataTypes reduce_l1_input,
                               SupportedDataTypes reduce_l2_input,
                               SupportedDataTypes reduce_log_sum_input,
                               SupportedDataTypes reduce_log_sum_exp_input,
                               SupportedDataTypes reduce_max_input,
                               SupportedDataTypes reduce_mean_input,
                               SupportedDataTypes reduce_min_input,
                               SupportedDataTypes reduce_product_input,
                               SupportedDataTypes reduce_sum_input,
                               SupportedDataTypes reduce_sum_square_input,
                               SupportedDataTypes relu_input,
                               SupportedDataTypes resample2d_input,
                               SupportedDataTypes reshape_input,
                               SupportedDataTypes sigmoid_input,
                               SupportedDataTypes slice_input,
                               SupportedDataTypes softmax_input,
                               SupportedDataTypes softplus_input,
                               SupportedDataTypes softsign_input,
                               SupportedDataTypes split_input,
                               SupportedDataTypes tanh_input,
                               SupportedDataTypes transpose_input,
                               SupportedDataTypes triangular_input,
                               SupportedDataTypes where_condition,
                               SupportedDataTypes where_value)
    :{}

DataTypeLimits::DataTypeLimits(const DataTypeLimits&) = default;
DataTypeLimits& DataTypeLimits::operator=(const DataTypeLimits&) = default;
DataTypeLimits::DataTypeLimits(DataTypeLimits&&) noexcept = default;
DataTypeLimits& DataTypeLimits::operator=(DataTypeLimits&&) noexcept = default;

DataTypeLimits::~DataTypeLimits() = default;

}  // namespace webnn