ice-rs 0.3.0

ZeroC Ice for Rust
Documentation
proxystring = { SOI ~ (direct_proxy | indirect_proxy) ~ EOI }

WHITESPACE = _{ " " }

direct_proxy = { ident ~ ":" ~ endpoint }

indirect_proxy = { ident ~ adapter? }
keyword_at = { "@" }
ident = @{ (!":" ~ !keyword_at ~ ANY)* }
adapter = { keyword_at ~ ident }
hostname = @{ (ASCII_ALPHA | "-")* }
ip = {
	ASCII_DIGIT{1,3} ~ "." ~
    ASCII_DIGIT{1,3} ~ "." ~
    ASCII_DIGIT{1,3} ~ "." ~
    ASCII_DIGIT{1,3}
}
port = { ASCII_DIGIT{2,5} }

endpoint = { endpoint_protocol ~ (endpoint_host | endpoint_port)* }
endpoint_protocol = { "default" | "tcp" | "ssl" }
endpoint_host = { "-h" ~ (ip | hostname) }
endpoint_port = { "-p" ~ port }