20 lines
		
	
	
		
			511 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			511 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
 | 
						|
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;
 | 
						|
  }
 | 
						|
}
 |