 
 // match one or more
 postfix operator +
-public postfix func + (rule: ParserRule) -> ParserRule {
+public postfix func + (rule: @escaping ParserRule) -> ParserRule {
     return {(parser: Parser, reader: Reader) -> Bool in
         let pos = reader.position
         var found = false

        rule_definition = rule_def
    }
    
    public func add_named_rule(_ name:String, rule: ParserRule) {
        named_rules[name] = rule
    }
    


// optional
postfix operator /~
public postfix func /~ (rule: @escaping ParserRule) -> ParserRule {
    return {(parser: Parser, reader: Reader) -> Bool in
        parser.enter("optionally")
        
