1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
// Copyright 2019 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.

#[macro_use]
pub mod test;

mod build;
mod errors;
mod meta_contents;
mod meta_package;
mod meta_subpackages;
mod package;
mod package_archive;
mod package_build_manifest;
mod package_builder;
pub mod package_directory;
mod package_manifest;
mod package_manifest_list;
mod path;
mod path_to_string;
mod subpackages_build_manifest;

pub use {
    crate::{
        errors::{
            BuildError, MetaContentsError, MetaPackageError, MetaSubpackagesError,
            PackageBuildManifestError, PackageManifestError, ParsePackagePathError,
        },
        meta_contents::MetaContents,
        meta_package::MetaPackage,
        meta_subpackages::MetaSubpackages,
        package_archive::PackageArchiveBuilder,
        package_build_manifest::PackageBuildManifest,
        package_builder::{PackageBuilder, ABI_REVISION_FILE_PATH},
        package_directory::{
            LoadAbiRevisionError, LoadMetaContentsError, OpenRights, PackageDirectory,
            ReadHashError,
        },
        package_manifest::{
            BlobInfo, PackageManifest, PackageManifestBuilder, RelativeTo, SubpackageInfo,
        },
        package_manifest_list::PackageManifestList,
        path::{PackageName, PackagePath, PackageVariant},
        subpackages_build_manifest::{
            SubpackagesBuildManifest, SubpackagesBuildManifestEntry,
            SubpackagesBuildManifestEntryKind,
        },
    },
    fuchsia_url::errors::PackagePathSegmentError,
    path_to_string::PathToStringExt,
};

pub(crate) use crate::package::{BlobEntry, Package, SubpackageEntry};