// This file is generated by cargo2android.py --config cargo2android.json.
// Do not modify this file as changes will be overridden on upgrade.

package {
    default_applicable_licenses: ["external_rust_crates_num-traits_license"],
}

// Added automatically by a large-scale-change that took the approach of
// 'apply every license found to every target'. While this makes sure we respect
// every license restriction, it may not be entirely correct.
//
// e.g. GPL in an MIT project might only apply to the contrib/ directory.
//
// Please consider splitting the single license below into multiple licenses,
// taking care not to lose any license_kind information, and overriding the
// default license using the 'licenses: [...]' property on targets as needed.
//
// For unused files, consider creating a 'fileGroup' with "//visibility:private"
// to attach the license to, and including a comment whether the files may be
// used in the current project.
//
// large-scale-change included anything that looked like it might be a license
// text as a license_text. e.g. LICENSE, NOTICE, COPYING etc.
//
// Please consider removing redundant or irrelevant files from 'license_text:'.
// See: http://go/android-license-faq
license {
    name: "external_rust_crates_num-traits_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
        "SPDX-license-identifier-MIT",
    ],
    license_text: [
        "LICENSE-APACHE",
        "LICENSE-MIT",
    ],
}

rust_library {
    name: "libnum_traits",
    host_supported: true,
    crate_name: "num_traits",
    cargo_env_compat: true,
    cargo_pkg_version: "0.2.15",
    srcs: ["src/lib.rs"],
    edition: "2015",
    features: [
        "default",
        "std",
    ],
    cfgs: [
        "has_copysign",
        "has_div_euclid",
        "has_i128",
        "has_int_assignop_ref",
        "has_leading_trailing_ones",
        "has_reverse_bits",
        "has_to_int_unchecked",
    ],
    apex_available: [
        "//apex_available:platform",
        "com.android.btservices",
        "com.android.compos",
        "com.android.uwb",
        "com.android.virt",
    ],
    vendor_available: true,
    min_sdk_version: "29",
}

rust_test {
    name: "num-traits_test_src_lib",
    host_supported: true,
    crate_name: "num_traits",
    cargo_env_compat: true,
    cargo_pkg_version: "0.2.15",
    srcs: ["src/lib.rs"],
    test_suites: ["general-tests"],
    auto_gen_config: true,
    test_options: {
        unit_test: true,
    },
    edition: "2015",
    features: [
        "default",
        "std",
    ],
    cfgs: [
        "has_copysign",
        "has_div_euclid",
        "has_i128",
        "has_int_assignop_ref",
        "has_leading_trailing_ones",
        "has_reverse_bits",
        "has_to_int_unchecked",
    ],
}

rust_test {
    name: "num-traits_test_tests_cast",
    host_supported: true,
    crate_name: "cast",
    cargo_env_compat: true,
    cargo_pkg_version: "0.2.15",
    srcs: ["tests/cast.rs"],
    test_suites: ["general-tests"],
    auto_gen_config: true,
    test_options: {
        unit_test: true,
    },
    edition: "2015",
    features: [
        "default",
        "std",
    ],
    cfgs: [
        "has_copysign",
        "has_div_euclid",
        "has_i128",
        "has_int_assignop_ref",
        "has_leading_trailing_ones",
        "has_reverse_bits",
        "has_to_int_unchecked",
    ],
    rustlibs: [
        "libnum_traits",
    ],
}
