'Set the input data set.
Parameters
data : Optional[Orange.data.Table]'

@Inputs.data
@check_sql_input
def set_data(self, data):

    if ((data is not None) and (len(data) < 2)):
        self.Error.not_enough_rows()
        data = None
    else:
        self.Error.not_enough_rows.clear()
    self.signal_data = data
    if ((self.matrix is not None) and (data is not None) and (len(self.matrix) == len(data))):
        self.closeContext()
        self.data = data
        self.update_controls()
        self.openContext(data)
    else:
        self._invalidated = True
    self._selection_mask = None
