code: func ExprFromSchema(expr Expression, schema *Schema) bool {
  	switch v := expr.(type) {
  	case *Column:
  		return schema.Contains(v)
  	case *ScalarFunction:
  		for _, arg := range v.GetArgs() {
  			if !ExprFromSchema(arg, schema) {
  				return false
  			}
  		}
  		return true
  	case *CorrelatedColumn, *Constant:
  		return true
  	}
  	return false
  }
docs: // ExprFromSchema checks if all columns of this expression are from the same schema.