[package] name = "jrsonnet-evaluator" description = "jsonnet interpreter" version.workspace = true repository.workspace = true authors = ["Yaroslav Bolyukin "] license = "MIT" edition = "2021" [features] default = ["explaining-traces"] # Rustc-like trace visualization explaining-traces = ["annotate-snippets"] # Allows library authors to throw custom errors anyhow-error = ["anyhow"] # Adds ability to build import closure in async async-import = ["async-trait"] # Allows to preserve field order in objects exp-preserve-order = [] # Implements field destructuring exp-destruct = ["jrsonnet-parser/exp-destruct"] # Iteration over objects yields [key, value] elements exp-object-iteration = [] # Bigint type exp-bigint = ["num-bigint", "jrsonnet-types/exp-bigint"] # obj?.field, obj?.['field'] exp-null-coaelse = ["jrsonnet-parser/exp-null-coaelse"] # Improves performance, and implements some useful things using nightly-only features nightly = ["hashbrown/nightly"] [dependencies] jrsonnet-interner.workspace = true jrsonnet-parser.workspace = true jrsonnet-types.workspace = true jrsonnet-macros.workspace = true jrsonnet-gcmodule.workspace = true pathdiff = "0.2.1" hashbrown = "0.13.2" static_assertions = "1.1" rustc-hash = "1.1" thiserror = "1.0" # Friendly errors strsim = { version = "0.10.0" } serde = "1.0" anyhow = { version = "1.0", optional = true } # Serialized stdlib bincode = { version = "1.3", optional = true } # Explaining traces annotate-snippets = { version = "0.9.1", features = ["color"], optional = true } # Async imports async-trait = { version = "0.1.60", optional = true } # Bigint num-bigint = { version = "0.4.3", features = ["serde"], optional = true } derivative = "2.2.0"