class_docstr: Class for applying backward type raising.
class_docstr_tok: ["Class","for","applying","backward","type","raising","."]
code: def apply(self, chart, grammar, left_edge, right_edge):
      if not (left_edge.end() == right_edge.start()):
          return
  
      for res in self._combinator.combine(
          left_edge.categ(), right_edge.categ()
      ):
          new_edge = CCGEdge(
              span=right_edge.span(), categ=res, rule=self._combinator
          )
          if chart.insert(new_edge, (right_edge,)):
              yield new_edge
  
imports: import itertools
  from nltk.ccg.combinator import *
  from nltk.ccg.combinator import BackwardApplication, BackwardBx, BackwardComposition, BackwardSx, BackwardT, ForwardApplication, ForwardComposition, ForwardSubstitution, ForwardT
  from nltk.ccg.lexicon import Token, fromstring
  from nltk.ccg.logic import *
  from nltk.parse import ParserI
  from nltk.parse.chart import AbstractChartRule, Chart, EdgeI
  from nltk.sem.logic import *
  from nltk.tree import Tree
label_desc: Use image node_id 2 for calling the BackwardTypeRaiseRule obj's underlying member method code with example usage: obj.apply(chart, grammar, left_edge, right_edge) without return types