summaryrefslogtreecommitdiff
path: root/node_modules/sucrase/dist/esm/transformers/OptionalCatchBindingTransformer.js
blob: 547273b458fa13353497fd8e93fd5276ddd45ca5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

import {TokenType as tt} from "../parser/tokenizer/types";

import Transformer from "./Transformer";

export default class OptionalCatchBindingTransformer extends Transformer {
  constructor( tokens,  nameManager) {
    super();this.tokens = tokens;this.nameManager = nameManager;;
  }

  process() {
    if (this.tokens.matches2(tt._catch, tt.braceL)) {
      this.tokens.copyToken();
      this.tokens.appendCode(` (${this.nameManager.claimFreeName("e")})`);
      return true;
    }
    return false;
  }
}