# Copyright 2022 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/rust/rustc_library.gni")

rustc_library("lib") {
  name = "structured_ui"
  edition = "2021"
  with_unit_tests = true

  deps = [
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:atty",
    "//third_party/rust_crates:cfg-if",
    "//third_party/rust_crates:serde",
    "//third_party/rust_crates:termion",
    "//third_party/rust_crates:unicode-segmentation",
  ]

  sources = [
    "src/lib.rs",
    "src/structured_ui.rs",
  ]
}

group("structured_ui") {
  public_deps = [ ":lib" ]
}

group("tests") {
  testonly = true
  deps = [ ":lib_test($host_toolchain)" ]
}
