nodes: 0, module; 1, function_definition; 2, function_name:deleteByOrigIndex; 3, parameters; 4, block; 5, identifier:self; 6, identifier:index; 7, expression_statement; 8, expression_statement; 9, expression_statement; 10, for_statement; 11, expression_statement; 12, expression_statement; 13, return_statement; 14, comment:"""Removes a single entry from the list given the index reference.
  
          The index, in this instance, is a reference to the *original* list
          indexing as seen when the list was first inserted into PLOD.
  
          An example:
  
          >>> test = [
          ...    {"name": "Jim",   "age": 18, "income": 93000, "wigs": 68       },
          ...    {"name": "Larry", "age": 18,                  "wigs": [3, 2, 9]},
          ...    {"name": "Joe",   "age": 20, "income": 15000, "wigs": [1, 2, 3]},
          ...    {"name": "Bill",  "age": 19, "income": 29000                   },
          ... ]
          >>> myPLOD = PLOD(test)
          >>> print myPLOD.sort("name").returnString()
          [
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 18, income: 93000, name: 'Jim'  , wigs:        68},
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]},
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]}
          ]
          >>> print myPLOD.deleteByOrigIndex(0).returnString()
          [
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]},
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]}
          ]
  
          As you can see in the example, the list was sorted by 'name', which
          placed 'Bill' as the first entry. Yet, when the deleteByOrigIndex was
          passed a zero (for the first entry), it removed 'Jim' instead since
          it was the original first entry.
  
          :param index:
             An integer representing the place of entry in the original list
             of dictionaries.
          :return:
             self
          """; 15, assignment; 16, assignment; 17, pattern_list; 18, call; 19, block; 20, assignment; 21, assignment; 22, identifier:self; 23, identifier:result; 24, list; 25, identifier:result_tracker; 26, list; 27, identifier:counter; 28, identifier:row; 29, identifier:enumerate; 30, argument_list; 31, if_statement; 32, attribute; 33, identifier:result; 34, attribute; 35, identifier:result_tracker; 36, attribute; 37, comparison_operator:self.index_track[counter] != index; 38, block; 39, identifier:self; 40, identifier:table; 41, identifier:self; 42, identifier:index_track; 43, identifier:self; 44, identifier:table; 45, subscript; 46, identifier:index; 47, expression_statement; 48, expression_statement; 49, attribute; 50, identifier:counter; 51, call; 52, call; 53, identifier:self; 54, identifier:index_track; 55, attribute; 56, argument_list; 57, attribute; 58, argument_list; 59, identifier:result; 60, identifier:append; 61, identifier:row; 62, identifier:result_tracker; 63, identifier:append; 64, subscript; 65, attribute; 66, identifier:counter; 67, identifier:self; 68, identifier:index_track
code: def deleteByOrigIndex(self, index):
          """Removes a single entry from the list given the index reference.
  
          The index, in this instance, is a reference to the *original* list
          indexing as seen when the list was first inserted into PLOD.
  
          An example:
  
          >>> test = [
          ...    {"name": "Jim",   "age": 18, "income": 93000, "wigs": 68       },
          ...    {"name": "Larry", "age": 18,                  "wigs": [3, 2, 9]},
          ...    {"name": "Joe",   "age": 20, "income": 15000, "wigs": [1, 2, 3]},
          ...    {"name": "Bill",  "age": 19, "income": 29000                   },
          ... ]
          >>> myPLOD = PLOD(test)
          >>> print myPLOD.sort("name").returnString()
          [
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 18, income: 93000, name: 'Jim'  , wigs:        68},
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]},
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]}
          ]
          >>> print myPLOD.deleteByOrigIndex(0).returnString()
          [
              {age: 19, income: 29000, name: 'Bill' , wigs: None     },
              {age: 20, income: 15000, name: 'Joe'  , wigs: [1, 2, 3]},
              {age: 18, income: None , name: 'Larry', wigs: [3, 2, 9]}
          ]
  
          As you can see in the example, the list was sorted by 'name', which
          placed 'Bill' as the first entry. Yet, when the deleteByOrigIndex was
          passed a zero (for the first entry), it removed 'Jim' instead since
          it was the original first entry.
  
          :param index:
             An integer representing the place of entry in the original list
             of dictionaries.
          :return:
             self
          """
          result = []
          result_tracker = []
          for counter, row in enumerate(self.table):
              if self.index_track[counter] != index:
                  result.append(row)
                  result_tracker.append(self.index_track[counter])
          self.table = result
          self.index_track = result_tracker
          return self