pub struct HtlConfig {
pub lint: LintConfig,
pub fmt: FmtConfig,
pub check: CheckConfig,
pub build: BuildConfig,
pub fix: FixConfig,
pub cache: CacheConfig,
pub contract: Vec<Contract>,
}Fields§
§lint: LintConfig§fmt: FmtConfig§check: CheckConfig§build: BuildConfig§fix: FixConfig§cache: CacheConfig§contract: Vec<Contract>Static counterpart of TealResolver::expect_type / require_fields: files
directly under dir must return type; checked by the contract lint.
Implementations§
Source§impl HtlConfig
impl HtlConfig
Sourcepub fn find(start: &Path) -> Result<Option<(PathBuf, Self)>>
pub fn find(start: &Path) -> Result<Option<(PathBuf, Self)>>
Nearest htl.toml at or above start (a file or directory). Ok(None) when
there is none; Err when one exists but does not parse.
Sourcepub fn lint_spec(&self) -> String
pub fn lint_spec(&self) -> String
The [lint] section as a +rule,-rule spec for Htl::configure_lints.
Append a command-line / env spec after it so later entries win.
Sourcepub fn search_paths(&self, root: &Path) -> Vec<PathBuf>
pub fn search_paths(&self, root: &Path) -> Vec<PathBuf>
Directories the checker should search, in the order it consults them: root,
root/src, root/types (hand-written .d.tl for modules the host provides, the
DefinitelyTyped shape), then [check] paths (resolved against root, ~
expanded). Only existing dirs. The project’s own code comes before declarations
it keeps for other people’s, and both come before anything supplied from outside.
Put them on the path with Htl::add_search_paths,
which preserves this order; add_path alone prepends, so adding the list front to
back reverses it.
A .tl source anywhere on the path beats a .d.tl, so a declaration under
types/ never shadows an implementation, and the order only decides between two
declarations of one module — which duplicate-declaration reports.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for HtlConfig
impl<'de> Deserialize<'de> for HtlConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for HtlConfig
impl RefUnwindSafe for HtlConfig
impl Send for HtlConfig
impl Sync for HtlConfig
impl Unpin for HtlConfig
impl UnsafeUnpin for HtlConfig
impl UnwindSafe for HtlConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more