{ type pretoken = Package of string | LastPackage of string | NoPackage } rule item = parse ['A'-'Z'] [^ ':']* ':' [^ '\n']* '\n' ( [^ '\n']+ '\n')* '\n'+ {Package (Lexing.lexeme lexbuf)} | ['A'-'Z'] [^ ':']* ':' [^ '\n']* '\n' ( [^ '\n']+ '\n')* '\n'* eof {LastPackage (Lexing.lexeme lexbuf)} | [ ' ' '\t' '\n' ]* eof {NoPackage}