let parse_str_annot ?(parse_pos = Parse_pos.create ()) ?len str = let pos = parse_pos.Parse_pos.buf_pos in let len = match len with | Some len -> len | None -> String.length str - pos in let max_pos = check_str_bounds "parse" ~pos ~len str in let state = { parse_pos; pstack = init_annot_pstate (); pbuf = Buffer.create 128; } in parse_str_annot state str ~max_pos ~pos