pub struct PresetInvocation {
pub name: String,
pub preset: String,
pub listen: Vec<ListenSpec>,
pub args: Value,
pub tls: Option<TlsConfig>,
pub source: SourceInfo,
}Expand description
User-authored preset invocation. The preset field discriminates
which expander runs; args is opaque at parse time and validated
inside the expander.
Fields§
§name: StringBase name; the expander prefixes synth rules (<name>.main,
<name>.ws, <name>.ws-allow, <name>.ws-deny).
preset: StringDiscriminator. One of reverse_proxy / port_forward /
static_site / redirect_https.
listen: Vec<ListenSpec>§args: Value§tls: Option<TlsConfig>Optional TLS termination config — same shape as RawRule.tls.
Each preset’s expand() propagates this to every emitted
rule on the listener, so a reverse_proxy preset that emits
<name>.ws + <name>.main carries the same TLS config on
both rules and lower_port’s consistency check passes.
source: SourceInfoTrait Implementations§
Source§impl Clone for PresetInvocation
impl Clone for PresetInvocation
Source§fn clone(&self) -> PresetInvocation
fn clone(&self) -> PresetInvocation
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for PresetInvocation
impl Debug for PresetInvocation
Source§impl<'de> Deserialize<'de> for PresetInvocation
impl<'de> Deserialize<'de> for PresetInvocation
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for PresetInvocation
impl RefUnwindSafe for PresetInvocation
impl Send for PresetInvocation
impl Sync for PresetInvocation
impl Unpin for PresetInvocation
impl UnsafeUnpin for PresetInvocation
impl UnwindSafe for PresetInvocation
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more