Skip to content

Add a FromParam instance for String #15

Description

@emhoracek

FromParam has instances for some common types, but it doesn't have an instance for String. That's not such a big deal, because usually it's nicer to use Text. But since a lot of functions from Prelude still use String, it makes sense to let users have String params as well.

Adding a String instance will let people write a route like this:

route ctxt [ path "hello" // param "name" ==> helloHandler ]

and a handler like this:

helloHandler :: Ctxt -> String -> IO (Maybe Response)
helloHandler ctxt name = 
  let helloMessage = T.pack ("Hello " ++ name) in 
    okText helloMessage

And when you went to "/hello?name=Suzy", you would see "Hello Suzy".

Right now, you would get an error that there's no FromParam instance for String.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions