phpdoc-parser/doc/grammars/phpdoc-method.peg
2022-05-15 14:10:30 +02:00

42 lines
737 B
Plaintext

PhpDocMethod
= AnnotationName IsStatic? MethodReturnType? MethodName MethodParameters? Description?
AnnotationName
= '@method'
IsStatic
= 'static'
MethodReturnType
= Type
MethodName
= [a-zA-Z_\127-\255][a-zA-Z0-9_\127-\255]*
MethodParameters
= '(' MethodParametersInner? ')'
MethodParametersInner
= MethodParameter (',' MethodParameter)*
MethodParameter
= MethodParameterType? IsReference? IsVariadic? MethodParameterName MethodParameterDefaultValue?
MethodParameterType
= Type
IsReference
= '&'
IsVariadic
= '...'
MethodParameterName
= '$' [a-zA-Z_\127-\255][a-zA-Z0-9_\127-\255]*
MethodParameterDefaultValue
= '=' PhpConstantExpr
Description
= .+ # TODO: exclude EOL or another PhpDocTag start