Esempio n. 1
0
 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
Esempio n. 2
0
def test_timestamp_precedence():
    ts = ibis.literal(datetime.now())
    highest_type = rlz.highest_precedence_dtype([ibis.NA, ts])
    assert highest_type == dt.timestamp
Esempio n. 3
0
 def output_dtype(self):
     exprs = [*self.results, self.default]
     return rlz.highest_precedence_dtype(exprs)
Esempio n. 4
0
 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)
Esempio n. 5
0
def test_timestamp_precedence():
    ts = ibis.literal(datetime.now())
    highest_type = rlz.highest_precedence_dtype([ibis.NA, ts])
    assert highest_type == dt.timestamp
Esempio n. 6
0
 def output_dtype(self):
     if util.all_of(self.args, ir.IntegerValue):
         return dt.float64
     else:
         return rlz.highest_precedence_dtype(self.args)
Esempio n. 7
0
 def type(self):
     return rlz.highest_precedence_dtype(self.results)