func toSparkConnectPlan()

in Sources/SparkConnect/Extension.swift [34:66]


  func toSparkConnectPlan(_ posArguments: [Sendable]) -> Plan {
    var sql = Spark_Connect_SQL()
    sql.query = self
    sql.posArguments = posArguments.map {
      var literal = ExpressionLiteral()
      switch $0 {
      case let value as Bool:
        literal.boolean = value
      case let value as Int8:
        literal.byte = Int32(value)
      case let value as Int16:
        literal.short = Int32(value)
      case let value as Int32:
        literal.integer = value
      case let value as Int64:
        literal.long = value
      case let value as Int:
        literal.long = Int64(value)
      case let value as String:
        literal.string = value
      default:
        literal.string = $0 as! String
      }
      var expr = Spark_Connect_Expression()
      expr.literal = literal
      return expr
    }
    var relation = Relation()
    relation.sql = sql
    var plan = Plan()
    plan.opType = Plan.OneOf_OpType.root(relation)
    return plan
  }