[][src]Crate hyperbole

An experimental web framework based on functional generic programming.

Modules

body

Helpers for parsing request bodies.

coproduct

Module that holds Coproduct data structures, traits, and implementations

field

Type level fields for fun and profit.

hlist

Module that holds HList data structures, implementations, and typeclasses.

mw

Middleware combinators.

reply

Helpers for replying to requests.

test

Facilities for testing hyperbole apps.

tree

Compressing dynamic route trie based on httprouter.

Macros

Coprod

Returns a type signature for a Coproduct of the provided types

Hlist

Returns a type signature for an HList of the provided types

access

Access a named field in an anonymous record.

f

Expands to either the type of a named field, or a (~consty) expression that evaluates to an instantiated field.

hlist

Returns an HList based on the values passed in.

path

Expands to a well-typed path specification.

record

Expands to either the type of an anonymous record, or a (~consty) expression that evaluates to an instantiated record.

Structs

App

Contains routes and handlers for a given http service, as well as top-level application state.

Ctx

A request processing context.

Traits

IsCoproduct

Types that represent coproducts.

Type Definitions

Init

The set of request scoped state that contexts are initialized with.

Response

An http response.

Attribute Macros

record_args

An attribute macro to reduce boilerplate when writing functions that accept an hlist as an argument (handlers and middlewares).