#ifndef OPTION_ASDL_H
#define OPTION_ASDL_H

namespace option_asdl {

#define ASDL_NAMES struct
ASDL_NAMES option_i {
  enum no_name {
  errexit = 1,
  nounset = 2,
  pipefail = 3,
  inherit_errexit = 4,
  nullglob = 5,
  verbose_errexit = 6,
  verbose_warn = 7,
  allexport = 8,
  noexec = 9,
  xtrace = 10,
  verbose = 11,
  noglob = 12,
  noclobber = 13,
  errtrace = 14,
  posix = 15,
  vi = 16,
  emacs = 17,
  interactive = 18,
  hashall = 19,
  lastpipe = 20,
  failglob = 21,
  extglob = 22,
  nocasematch = 23,
  dotglob = 24,
  extdebug = 25,
  eval_unsafe_arith = 26,
  ignore_flags_not_impl = 27,
  ignore_shopt_not_impl = 28,
  rewrite_extern = 29,
  _allow_command_sub = 30,
  _allow_process_sub = 31,
  dynamic_scope = 32,
  redefine_const = 33,
  redefine_source = 34,
  _running_trap = 35,
  _running_hay = 36,
  _no_debug_trap = 37,
  _no_err_trap = 38,
  strict_parse_equals = 39,
  strict_parse_slice = 40,
  strict_argv = 41,
  strict_arith = 42,
  strict_arg_parse = 43,
  strict_array = 44,
  strict_control_flow = 45,
  strict_env_binding = 46,
  strict_errexit = 47,
  strict_nameref = 48,
  strict_word_eval = 49,
  strict_tilde = 50,
  strict_glob = 51,
  parse_at = 52,
  parse_proc = 53,
  parse_func = 54,
  parse_brace = 55,
  parse_bracket = 56,
  parse_equals = 57,
  parse_paren = 58,
  parse_ysh_string = 59,
  parse_triple_quote = 60,
  parse_ysh_expr_sub = 61,
  simple_word_eval = 62,
  no_dash_glob = 63,
  command_sub_errexit = 64,
  process_sub_fail = 65,
  xtrace_rich = 66,
  no_xtrace_osh = 67,
  sigpipe_status_ok = 68,
  env_obj = 69,
  init_ysh_globals = 70,
  for_loop_frames = 71,
  parse_at_all = 72,
  no_parse_backslash = 73,
  no_parse_backticks = 74,
  no_parse_bare_word = 75,
  no_parse_dbracket = 76,
  no_parse_dollar = 77,
  no_parse_dparen = 78,
  no_parse_ignored = 79,
  no_parse_osh = 80,
  no_parse_sh_arith = 81,
  no_parse_word_join = 82,
  no_exported = 83,
  no_init_globals = 84,
  no_osh_builtins = 85,
  simple_echo = 86,
  simple_eval_builtin = 87,
  simple_test_builtin = 88,
  simple_trap_builtin = 89,
  expand_aliases = 90,
  progcomp = 91,
  hostcomplete = 92,
  histappend = 93,
  cmdhist = 94,
  assoc_expand_once = 95,
  autocd = 96,
  cdable_vars = 97,
  cdspell = 98,
  checkhash = 99,
  checkjobs = 100,
  checkwinsize = 101,
  complete_fullquote = 102,
  direxpand = 103,
  dirspell = 104,
  execfail = 105,
  extquote = 106,
  force_fignore = 107,
  globasciiranges = 108,
  globstar = 109,
  gnu_errfmt = 110,
  histreedit = 111,
  histverify = 112,
  huponexit = 113,
  interactive_comments = 114,
  lithist = 115,
  localvar_inherit = 116,
  localvar_unset = 117,
  login_shell = 118,
  mailwarn = 119,
  no_empty_cmd_completion = 120,
  nocaseglob = 121,
  progcomp_alias = 122,
  promptvars = 123,
  restricted_shell = 124,
  shift_verbose = 125,
  sourcepath = 126,
  xpg_echo = 127,
  ARRAY_SIZE = 128,
  };
};

typedef int option_t;

ASDL_NAMES builtin_i {
  enum no_name {
  colon = 1,
  dot = 2,
  exec_ = 3,
  eval = 4,
  set = 5,
  shift = 6,
  times = 7,
  trap = 8,
  unset = 9,
  readonly = 10,
  local = 11,
  declare = 12,
  typeset = 13,
  export_ = 14,
  true_ = 15,
  false_ = 16,
  try_ = 17,
  assert_ = 18,
  break_ = 19,
  continue_ = 20,
  return_ = 21,
  exit = 22,
  read = 23,
  echo = 24,
  printf = 25,
  mapfile = 26,
  readarray = 27,
  cd = 28,
  chdir = 29,
  pushd = 30,
  popd = 31,
  dirs = 32,
  pwd = 33,
  source = 34,
  umask = 35,
  ulimit = 36,
  wait = 37,
  jobs = 38,
  fg = 39,
  bg = 40,
  kill = 41,
  shopt = 42,
  complete = 43,
  compgen = 44,
  compopt = 45,
  compadjust = 46,
  compexport = 47,
  getopts = 48,
  builtin = 49,
  command = 50,
  type = 51,
  hash = 52,
  help = 53,
  history = 54,
  fc = 55,
  alias = 56,
  unalias = 57,
  bind = 58,
  append = 59,
  write = 60,
  json = 61,
  json8 = 62,
  pp = 63,
  hay = 64,
  haynode = 65,
  use = 66,
  error = 67,
  failed = 68,
  fork = 69,
  forkwait = 70,
  redir = 71,
  fopen = 72,
  shvar = 73,
  ctx = 74,
  invoke = 75,
  runproc = 76,
  boolstatus = 77,
  test = 78,
  bracket = 79,
  push_registers = 80,
  source_guard = 81,
  is_main = 82,
  cat = 83,
  rm = 84,
  sleep = 85,
  ARRAY_SIZE = 86,
  };
};

typedef int builtin_t;


}  // namespace option_asdl

#endif  // OPTION_ASDL_H
