# Copyright 2018 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/package.gni")
import("//build/rust/rustc_library.gni")
import("//build/test/test_package.gni")

rustc_library("escaped-cstring") {
  name = "escaped-cstring"
  version = "0.1.0"
  edition = "2018"
  with_unit_tests = true

  deps = [
    "//third_party/rust-crates/rustc_deps:memchr",
    "//third_party/rust-crates/rustc_deps:smallvec",
  ]
}

test_package("escaped-cstring-tests") {
  deps = [
    ":escaped-cstring",
  ]

  tests = [
    {
      name = "escaped_cstring_lib_test_rustc"
    },
  ]
}
