add return and argument types
This commit is contained in:
@ -3,14 +3,13 @@ module Parser
|
||||
include Parslet
|
||||
|
||||
rule(:function_definition) {
|
||||
keyword_def >> ((module_name|name).as(:receiver) >> str(".")).maybe >> #possibly qualified
|
||||
name.as(:function_name) >> parameter_list.maybe >> space >> expressions_end >> space?
|
||||
type >> ((module_name|name).as(:receiver) >> str(".")).maybe >> #possibly qualified
|
||||
name.as(:function_name) >> left_parenthesis >>
|
||||
parameter_list.maybe >> right_parenthesis >> expressions_end >> space?
|
||||
}
|
||||
|
||||
rule(:parameter_list) {
|
||||
left_parenthesis >>
|
||||
((name.as(:parameter) >> (comma >> name.as(:parameter)).repeat(0)).repeat(0,1)).as(:parameter_list) >>
|
||||
right_parenthesis
|
||||
((field.as(:parameter) >> (comma >> field.as(:parameter)).repeat(0)).repeat(0,1)).as(:parameter_list)
|
||||
}
|
||||
|
||||
end
|
||||
|
Reference in New Issue
Block a user