def execute(self, q, args=()):
        from salesforce.backend import base

        self.rowcount = None
        if isinstance(self.query, SalesforceQuery) or self.query is None:
            response = self.execute_select(q, args)
            #print("response : %s" % response.text)
        elif isinstance(self.query, SalesforceRawQuery):
            response = self.execute_select(q, args)
        elif isinstance(self.query, subqueries.InsertQuery):
            response = self.execute_insert(self.query)
        elif isinstance(self.query, subqueries.UpdateQuery):
            response = self.execute_update(self.query)
        elif isinstance(self.query, subqueries.DeleteQuery):
            response = self.execute_delete(self.query)
        else:
            raise base.DatabaseError("Unsupported query: type %s: %s" % (type(self.query), self.query))

        # the encoding is detected automatically, e.g. from headers
        if(response and response.text):
            # parse_float set to decimal.Decimal to avoid precision errors when
            # converting from the json number to a float to a Decimal object
            # on a model's DecimalField...converts from json number directly
            # a Decimal object
            data = response.json(parse_float=decimal.Decimal)
            # a SELECT query
            if('totalSize' in data):
                self.rowcount = data['totalSize']
            # a successful INSERT query, return after getting PK
            elif('success' in data and 'id' in data):
                self.lastrowid = data['id']
                return
            # something we don't recognize
            else:
                raise base.DatabaseError(data)

            if q.upper().startswith('SELECT COUNT() FROM'):
                # COUNT() queries in SOQL are a special case, as they don't actually return rows
                self.results = iter([[self.rowcount]])
            else:
                if self.query:
                    self.query.first_chunk_len = len(data['records'])
                self.first_row = data['records'][0] if data['records'] else None
                self.results = self.query_results(data)
        else:
            self.results = iter([])
Return a dict of neighbors of node n in the dense graph.
dataset/ETHPy150Open django-salesforce/django-salesforce/salesforce/backend/query.py/CursorWrapper.execute--crossover with--dataset/ETHPy150Open networkx/networkx/networkx/algorithms/approximation/kcomponents.py/_AntiGraph.__getitem__