1mod artifact;
8mod discovery;
9mod extract;
10mod glob;
11mod integrity;
12mod interpolate;
13mod launch;
14mod manifest;
15mod pointer;
16mod shorthand;
17mod source;
18mod val;
19mod valdefs;
20
21pub use artifact::{
22 artifact_applies, decode_artifact, deduplicate_artifacts, encode_artifact, Artifact,
23 ArtifactWire,
24};
25pub use discovery::{Discovery, HashRef, IntegrityProbes, SizeProbes};
26pub use extract::{
27 decode_extract, encode_extract, ExtractDump, ExtractPick, ExtractRule, ExtractScan,
28 ExtractWire,
29};
30pub use glob::{glob_base, glob_to_regex};
31pub use integrity::{HashAlgo, HashEntry, Integrity};
32pub use interpolate::{interpolate, resolve_vars, VarMap};
33pub use launch::{
34 decode_launch, encode_launch, resolved_args, resolved_envs, Launch, LaunchWire,
35};
36pub use manifest::{
37 decode_manifest, encode_manifest, filter_manifest, parse_manifest, Manifest, ManifestWire,
38};
39pub use pointer::{
40 decode_pointer_descriptor, encode_pointer_descriptor, parse_pointer_descriptor,
41 PointerDescriptor, PointerDescriptorWire,
42};
43pub use shorthand::{
44 encode_short_rule, encode_short_ruleset, parse_short_rule, parse_short_ruleset, RawRuleset,
45 RawSingle, ShorthandError,
46};
47pub use source::{decode_source, encode_source, Source, SourceWire};
48pub use val::{encode_val, encode_valset, parse_val, parse_valset, resolve_valset, Val, Valset};
49pub use valdefs::{
50 encode_val_defs, parse_val_defs, resolve_val_defs, ConditionalVal, ValDef, ValDefs,
51};
52
53pub use opys_mojang_rules::{
54 allow_os_ruleset, empty_ruleset, satisfies_features, satisfies_os, satisfies_rule,
55 satisfies_ruleset, FeatureConstraint, OsArch, OsConstraint, OsName, OsOptions, Rule,
56 RuleAction, RuleError, Ruleset,
57};
58
59#[derive(Debug, thiserror::Error)]
60pub enum DecodeError {
61 #[error("Failed to parse manifest: {0}")]
62 Manifest(String),
63 #[error(transparent)]
64 Json(#[from] serde_json::Error),
65 #[error(transparent)]
66 Shorthand(#[from] ShorthandError),
67}