let setup_parser e
                                 (p : (Token.t * token_info) Stream.t -> 'a)
                                 =
                  let f ts = Action.mk (p ts)
                  in
                    (e.estart <- (fun _ -> f);
                     e.econtinue <-
                       (fun _ _ _ (__strm : _ Stream.t) ->
                          raise Stream.Failure);
                     e.edesc <- Dparser f)