pegged v0.4.3 (2018-02-16T19:45:56Z)
Dub
Repo
TypeZeroOrMore.Match
pegged
examples
pattern
TypeZeroOrMore
Undocumented in source.
struct
TypeZeroOrMore
(alias Pattern)
template
Match (
T
...
) {
alias
P
=
Pattern
.
Match
!(
T
)
;
static if
(
P.successful
)
enum
successful
;
alias
Types
=
TypeTuple
!(
P
.
Types
,
TypeZeroOrMore
!(
Pattern
).
Match
!(
P
.
Rest
).
Types
)
;
static if
(
P.successful
)
enum
begin
;
alias
More
=
TypeZeroOrMore
!(
Pattern
).
Match
!(
P
.
Rest
)
;
static if
(
P.successful
)
enum
end
;
alias
Rest
=
TypeZeroOrMore
!(
Pattern
).
Match
!(
P
.
Rest
).
Rest
;
static if
(!(
P.successful
))
enum
successful
;
alias
Types
=
TypeTuple
!()
;
static if
(!(
P.successful
))
enum
begin
;
static if
(!(
P.successful
))
enum
end
;
alias
Rest
=
T
;
}
Members
Aliases
More
alias
More
=
TypeZeroOrMore
!(
Pattern
).
Match
!(
P
.
Rest
)
Undocumented in source.
P
alias
P
=
Pattern
.
Match
!(
T
)
Undocumented in source.
Rest
alias
Rest
=
TypeZeroOrMore
!(
Pattern
).
Match
!(
P
.
Rest
).
Rest
Undocumented in source.
Rest
alias
Rest
=
T
Undocumented in source.
Types
alias
Types
=
TypeTuple
!(
P
.
Types
,
TypeZeroOrMore
!(
Pattern
).
Match
!(
P
.
Rest
).
Types
)
Undocumented in source.
Types
alias
Types
=
TypeTuple
!()
Undocumented in source.
Manifest constants
begin
enum
begin
;
Undocumented in source.
begin
enum
begin
;
Undocumented in source.
end
enum
end
;
Undocumented in source.
end
enum
end
;
Undocumented in source.
successful
enum
successful
;
Undocumented in source.
successful
enum
successful
;
Undocumented in source.
Meta
Source
See Implementation
pegged
examples
pattern
TypeZeroOrMore
templates
Match