Skip to main content

Route

Enum Route 

Source
pub enum Route {
Show 18 variants Landing {}, Pricing {}, Privacy {}, Terms {}, Roadmap {}, Guide {}, Crates {}, Success { session_id: Option<String>, }, Studio { file: Option<String>, }, Learn {}, Profile {}, Workspace { subject: String, }, Registry { token: Option<String>, login: Option<String>, error: Option<String>, q: Option<String>, }, PackageDetail { name: String, }, Benchmarks {}, News { tag: Option<String>, }, NewsArticle { slug: String, }, NotFound { route: Vec<String>, },
}
Expand description

Application routes.

This enum is derived with Routable to generate route matching logic. Each variant corresponds to a URL pattern and its associated page component.

Variants§

§

Landing

Marketing homepage at /.

§

Pricing

Contact and licensing at /pricing.

§

Privacy

Privacy policy at /privacy.

§

Terms

Terms of service at /terms.

§

Roadmap

Product roadmap at /roadmap.

§

Guide

Documentation and tutorials at /guide.

§

Crates

Crate documentation at /crates.

§

Success

Post-checkout success page at /success.

Stripe redirects here with a session_id query parameter that the page exchanges for a license key.

Fields

§session_id: Option<String>

Stripe checkout session id from the redirect, if any.

§

Studio

Playground for experimentation at /studio.

Deep links carry the VFS path of the file to open as a file query parameter (without the leading slash), e.g. /studio?file=examples/logic/prover-demo.logic.

Fields

§file: Option<String>

VFS path of the file to open, if any.

§

Learn

Main learning interface at /learn.

All learning happens here - curriculum browsing, exercises, and review.

§

Profile

User profile and settings at /profile.

§

Workspace

Subject-specific workspace at /workspace/:subject.

Fields

§subject: String

The workspace subject identifier (e.g., “logic”, “proofs”).

§

Registry

Package registry browser at /registry.

The GitHub OAuth callback redirects here with token/login on success or error on failure; q pre-fills the package search (the SearchAction URL advertised in the JSON-LD).

Fields

§token: Option<String>

OAuth access token from the callback, if any.

§login: Option<String>

GitHub login name from the callback, if any.

§error: Option<String>

OAuth error message from the callback, if any.

§q: Option<String>

Package search query to pre-fill, if any.

§

PackageDetail

Package detail page at /registry/package/:name.

Fields

§name: String

The package name to display.

§

Benchmarks

Performance benchmarks at /benchmarks.

§

News

News index page at /news.

An optional tag query parameter pre-applies a tag filter.

Fields

§tag: Option<String>

Tag to filter articles by, if any.

§

NewsArticle

News article page at /news/:slug.

Fields

§slug: String

The article slug.

§

NotFound

Catch-all for unknown routes, renders 404 page.

Fields

§route: Vec<String>

Path segments that didn’t match any route.

Trait Implementations§

Source§

impl Clone for Route

Source§

fn clone(&self) -> Route

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Route

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Display for Route

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl FromStr for Route

Source§

type Err = RouteParseError<RouteMatchError>

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
Source§

impl PartialEq for Route

Source§

fn eq(&self, other: &Route) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Routable for Route
where Self: Clone,

Source§

const SITE_MAP: &'static [SiteMapSegment]

The error that can occur when parsing a route.
Source§

fn render(&self, level: usize) -> Element

Render the route at the given level
§

fn is_child_of(&self, other: &Self) -> bool

Checks if this route is a child of the given route. Read more
§

fn parent(&self) -> Option<Self>

Get the parent route of this route. Read more
§

fn flatten_site_map<'a>() -> FlatMap<Iter<'a, SiteMapSegment>, Vec<Vec<SegmentType>>, fn(&SiteMapSegment) -> Vec<Vec<SegmentType>>>

Returns a flattened version of [Self::SITE_MAP].
§

fn static_routes() -> Vec<Self>

Gets a list of all the static routes. Example static route: #[route("/static/route")]
Source§

impl<'a> TryFrom<&'a str> for Route

Source§

type Error = <Route as FromStr>::Err

The type returned in the event of a conversion error.
Source§

fn try_from(s: &'a str) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl StructuralPartialEq for Route

Auto Trait Implementations§

§

impl Freeze for Route

§

impl RefUnwindSafe for Route

§

impl Send for Route

§

impl Sync for Route

§

impl Unpin for Route

§

impl UnsafeUnpin for Route

§

impl UnwindSafe for Route

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRouteSegment for T
where T: FromStr, <T as FromStr>::Err: Display,

§

type Err = <T as FromStr>::Err

The error that can occur when parsing a route segment.
§

fn from_route_segment(route: &str) -> Result<T, <T as FromRouteSegment>::Err>

Create an instance of Self from a route segment.
§

impl<T> InitializeFromFunction<T> for T

§

fn initialize_from_function(f: fn() -> T) -> T

Create an instance of this type from an initialization function
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
§

impl<Ret> SpawnIfAsync<(), Ret> for Ret

§

fn spawn(self) -> Ret

Spawn the value into the dioxus runtime if it is an async block
§

impl<T, O> SuperFrom<T> for O
where O: From<T>,

§

fn super_from(input: T) -> O

Convert from a type to another type.
§

impl<T, O, M> SuperInto<O, M> for T
where O: SuperFrom<T, M>,

§

fn super_into(self) -> O

Convert from a type to another type.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T> ToQueryArgument for T
where T: Display,

§

fn display_query_argument( &self, query_name: &str, f: &mut Formatter<'_>, ) -> Result<(), Error>

Display the query argument as a string.
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<S, T> Upcast<T> for S
where T: UpcastFrom<S> + ?Sized, S: ?Sized,

Source§

fn upcast(&self) -> &T
where Self: ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider ref type within the Wasm bindgen generics type system. Read more
Source§

fn upcast_into(self) -> T
where Self: Sized + ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider type within the Wasm bindgen generics type system. Read more
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<T> DependencyElement for T
where T: 'static + PartialEq + Clone,

§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,