class_docstr: This class holds the broken-down components of a hole semantics, i.e. it
  extracts the holes, labels, logic formula fragments and constraints out of
  a big conjunction of such as produced by the hole semantics grammar.  It
  then provides some operations on the semantics dealing with holes, labels
  and finding legal ways to plug holes with labels.
class_docstr_tok: ["This","class","holds","the","broken-down","components","of","a","hole","semantics",",","i.e",".","it","extracts","the","holes",",","labels",",","logic","formula","fragments","and","constraints","out","of","a","big","conjunction","of","such","as","produced","by","the","hole","semantics","grammar",".","It","then","provides","some","operations","on","the","semantics","dealing","with","holes",",","labels","and","finding","legal","ways","to","plug","holes","with","labels","."]
docstr: Calculate and return all the legal pluggings (mappings of labels to
  holes) of this semantics given the constraints.
docstr_tok: ["Calculate","and","return","all","the","legal","pluggings","(","mappings","of","labels","to","holes",")","of","this","semantics","given","the","constraints","."]
code: def pluggings(self):
      """
      Calculate and return all the legal pluggings (mappings of labels to
      holes) of this semantics given the constraints.
      """
      record = []
      self._plug_nodes(
          [(self.top_hole, [])], self.top_most_labels, {}, record
      )
      return record
  
imports: from functools import reduce
  from nltk.parse import load_parser
  from nltk.sem.logic import AllExpression, AndExpression, ApplicationExpression, ExistsExpression, IffExpression, ImpExpression, LambdaExpression, NegatedExpression, OrExpression
  from nltk.sem.skolemize import skolemize
label_desc: Use image node_id 7 for calling the HoleSemantics obj's underlying member method code with example usage: obj.pluggings() and returns: record