Skip to content

Support UInt32, UInt64, Int32, Int64, Float32, Float64 in new expression framework #6636

@andylokandy

Description

@andylokandy

There are three places new data types need to be implemented:

  1. common_expression::types::DataType, which stores all logical data types. Since new logical data types are defined, you would like to see common_expression::type_check::{can_cast_to, common_super_type} to add coressponding casting rules.
  2. common_expression::values::{Scalar, ScalarRef, Column}, which stores physical data values. And then runtime casting need to be added to common_expression::evaluator::Evaluator::run_cast(), which should excatly following the rules defined in can_cast_to.
  3. common_expression::types:::number::Number trait, for allowing to use them in static generics API.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions