A high-performance DataFrame library for Rust, providing pandas-like API with advanced features including SIMD optimization, parallel processing, and distributed computing capabilities
//! # Type Compatibility Utilities
//!//! This module provides utilities for checking type compatibility for
//! various operations in distributed processing.
usecrate::distributed::expr::ExprDataType;/// Checks if two data types are compatible for joins
pubfnare_join_compatible(left_type:&ExprDataType, right_type:&ExprDataType)->bool{match(left_type, right_type){// Same types are always compatible
(a, b)if a == b =>true,// Integer and Float are compatible
(ExprDataType::Integer,ExprDataType::Float)|(ExprDataType::Float,ExprDataType::Integer)=>true,// Date and Timestamp are compatible
(ExprDataType::Date,ExprDataType::Timestamp)|(ExprDataType::Timestamp,ExprDataType::Date)=>true,// Other combinations are not compatible
_=>false,}}