def output_dtype(self): # filter out null types non_null_exprs = [arg for arg in self.arg if arg.type() != dt.null] if non_null_exprs: return rlz.highest_precedence_dtype(non_null_exprs) else: return dt.null
def test_timestamp_precedence(): ts = ibis.literal(datetime.now()) highest_type = rlz.highest_precedence_dtype([ibis.NA, ts]) assert highest_type == dt.timestamp
def output_dtype(self): exprs = [*self.results, self.default] return rlz.highest_precedence_dtype(exprs)
def output_dtype(self): # TODO(kszucs): we could extend the functionality of # rlz.shape_like to support varargs with .flat_args() # to define a subset of input arguments values = [*self.results, self.default] return rlz.highest_precedence_dtype(values)
def test_timestamp_precedence(): ts = ibis.literal(datetime.now()) highest_type = rlz.highest_precedence_dtype([ibis.NA, ts]) assert highest_type == dt.timestamp
def output_dtype(self): if util.all_of(self.args, ir.IntegerValue): return dt.float64 else: return rlz.highest_precedence_dtype(self.args)
def type(self): return rlz.highest_precedence_dtype(self.results)