| 40 | } |
| 41 | |
| 42 | void EnforceSingleRowStep::makeOutputNullable() |
| 43 | { |
| 44 | auto input_header = input_streams[0].header; |
| 45 | NamesAndTypes nullable_output_header; |
| 46 | for(auto & input : input_header) |
| 47 | { |
| 48 | if (!JoinCommon::canBecomeNullable(input.type)) |
| 49 | nullable_output_header.emplace_back(input.name, input.type); |
| 50 | else |
| 51 | nullable_output_header.emplace_back(input.name, JoinCommon::convertTypeToNullable(input.type)); |
| 52 | } |
| 53 | output_stream = DataStream{.header = {nullable_output_header}}; |
| 54 | } |
| 55 | |
| 56 | std::shared_ptr<EnforceSingleRowStep> EnforceSingleRowStep::fromProto(const Protos::EnforceSingleRowStep & proto, ContextPtr) |
| 57 | { |
nothing calls this directly
no test coverage detected