:relfileprefix: ../../../
[#boost-urls-grammar-parse]

== xref:boost.adoc[pass:[boost]]::xref:boost/urls.adoc[pass:[urls]]::xref:boost/urls/grammar.adoc[pass:[grammar]]::parse

  


Parse a character buffer using a rule



=== Synopsis
  

[source,cpp,subs="verbatim,macros,-callouts"]
----
template<class Rule>
system::result<Rule::value_type>
xref:boost/urls/grammar/parse-06.adoc[pass:[parse]](
    char const*& it,
    char const* end,
    Rule const& r);
----

[source,cpp,subs="verbatim,macros,-callouts"]
----
template<class Rule>
system::result<Rule::value_type>
xref:boost/urls/grammar/parse-02.adoc[pass:[parse]](
    core::string_view s,
    Rule const& r);
----
  


=== Return Value


The parsed value upon success,
otherwise an error.



=== Parameters

|===
| Name | Description 

| *it*
| 
A pointer to the start. The
caller's variable is changed to
reflect the amount of input consumed.

| *end*
| 
A pointer to the end.

| *r*
| 
The rule to use

| *s*
| 
The input string

|===




