~/bend-docscommunity

src/router.bend relies on unsafe/foreign

raw source on the hub · import 0x36c893ade1f158581b4c8c34eb3b510e/src/router.bend as Router

3 imports
import Base
import ./server.bend as Web
import ./app.bend as App

Types

type Param source · line 5 · raw

Data

type Match source · line 8 · raw

Data

type Route source · line 53 · raw

Type

type Selection source · line 56 · raw

Type

Definitions

def prepend source · line 12 · raw

@name:String -> @value:String -> @result:Match -> Match

def literal source · line 17 · raw

@same:Bool -> @next:(@_:Unit -> Match) -> Match

def capture source · line 22 · raw

@parameter:Bool -> @pattern:String -> @+name:String -> @+value:String -> @next:(@_:Unit -> Match) -> Match

def segment source · line 28 · raw

@pattern:String -> @+value:String -> @next:(@_:Unit -> Match) -> Match

def values source · line 34 · raw

@patterns:List<&2, String> -> @path:List<&2, String> -> Match

def match_path source · line 40 · raw

@pattern:String -> @path:String -> Match

def param_step source · line 43 · raw

@found:Bool -> @value:String -> @next:(@_:Unit -> Maybe<&1, String>) -> Maybe<&1, String>

def param source · line 48 · raw

@+name:String -> @params:List<&2, Param> -> Maybe<&1, String>

def add_allowed source · line 61 · raw

@+method:String -> @result:Selection -> Selection

def chosen source · line 67 · raw

@same:Bool -> @method:String -> @params:List<&2, Param> -> @handler:(@_:List<&2, Param> -> @_:0x36c893ade1f158581b4c8c34eb3b510e/src/server.Incoming -> IO(0x36c893ade1f158581b4c8c34eb3b510e/src/server.Reply)) -> @next:(@_:Unit -> Selection) -> Selection

def matched source · line 72 · raw

@result:Match -> @same:Bool -> @method:String -> @handler:(@_:List<&2, Param> -> @_:0x36c893ade1f158581b4c8c34eb3b510e/src/server.Incoming -> IO(0x36c893ade1f158581b4c8c34eb3b510e/src/server.Reply)) -> @next:(@_:Unit -> Selection) -> Selection

def select source · line 77 · raw

@routes:List<&1, Route> -> @+method:String -> @+path:String -> Selection

def selected source · line 83 · raw

@result:Selection -> @request:0x36c893ade1f158581b4c8c34eb3b510e/src/server.Incoming -> IO(0x36c893ade1f158581b4c8c34eb3b510e/src/server.Reply)

def route source · line 92 · raw

@routes:List<&1, Route> -> @request:0x36c893ade1f158581b4c8c34eb3b510e/src/server.Incoming -> IO(0x36c893ade1f158581b4c8c34eb3b510e/src/server.Reply)