// This file is generated by cargo2android.py --run --device --tests --dependencies.

package {
    default_applicable_licenses: ["external_rust_crates_unicode-xid_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_unicode-xid_license",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
        "SPDX-license-identifier-MIT",
    ],
    license_text: [
        "COPYRIGHT",
        "LICENSE-APACHE",
        "LICENSE-MIT",
    ],
}

rust_library {
    name: "libunicode_xid",
    host_supported: true,
    crate_name: "unicode_xid",
    srcs: ["src/lib.rs"],
    edition: "2015",
    features: ["default"],
}

rust_defaults {
    name: "unicode-xid_defaults",
    crate_name: "unicode_xid",
    srcs: ["src/lib.rs"],
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2015",
    features: ["default"],
}

rust_test_host {
    name: "unicode-xid_host_test_src_lib",
    defaults: ["unicode-xid_defaults"],
}

rust_test {
    name: "unicode-xid_device_test_src_lib",
    defaults: ["unicode-xid_defaults"],
}

rust_defaults {
    name: "unicode-xid_defaults_exhaustive_tests",
    crate_name: "exhaustive_tests",
    srcs: ["tests/exhaustive_tests.rs"],
    test_suites: ["general-tests"],
    auto_gen_config: true,
    edition: "2015",
    features: ["default"],
    rustlibs: [
        "libunicode_xid",
    ],
}

rust_test_host {
    name: "unicode-xid_host_test_tests_exhaustive_tests",
    defaults: ["unicode-xid_defaults_exhaustive_tests"],
}

rust_test {
    name: "unicode-xid_device_test_tests_exhaustive_tests",
    defaults: ["unicode-xid_defaults_exhaustive_tests"],
}
