Module Js_parser.Lex_env

module Sedlexing = Flow_sedlexing;
type bol = {
  1. line: int,
  2. offset: int,
};
type lex_state = {
  1. lex_errors_acc: list((Loc.t, Parse_error.t)),
};
type t = {
  1. lex_source: option(File_key.t),
  2. lex_lb: Sedlexing.lexbuf,
  3. lex_bol: bol,
  4. lex_in_comment_syntax: bool,
  5. lex_enable_comment_syntax: bool,
  6. lex_state: lex_state,
  7. lex_last_loc: Loc.t,
};
let empty_lex_state: lex_state;
let initial_last_loc: Loc.t;
let new_lex_env: option(File_key.t) => Sedlexing.lexbuf => enable_types_in_comments:bool => t;
let clone: t => t;
let lexbuf: t => Sedlexing.lexbuf;
let source: t => option(File_key.t);
let state: t => lex_state;
let line: t => int;
let bol_offset: t => int;
let is_in_comment_syntax: t => bool;
let is_comment_syntax_enabled: t => bool;
let in_comment_syntax: bool => t => t;
let debug_string_of_lexbuf: 'a => string;
let debug_string_of_lex_env: t => string;