org.apache.flink.types.Either.obtainLeft()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(3.3k)|赞(0)|评价(0)|浏览(138)

本文整理了Java中org.apache.flink.types.Either.obtainLeft()方法的一些代码示例,展示了Either.obtainLeft()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Either.obtainLeft()方法的具体详情如下:
包路径:org.apache.flink.types.Either
类名称:Either
方法名:obtainLeft

Either.obtainLeft介绍

[英]Utility function for EitherSerializer to support object reuse. To support object reuse both subclasses of Either contain a reference to an instance of the other type. This method provides access to and initializes the cross-reference.
[中]EitherSerializer的实用功能,支持对象重用。为了支持对象重用,其中一个的两个子类都包含对另一类型实例的引用。此方法提供对交叉引用的访问和初始化。

代码示例

代码示例来源:origin: apache/flink

@Override
public Either<L, R> deserialize(Either<L, R> reuse, DataInputView source) throws IOException {
  boolean isLeft = source.readBoolean();
  if (isLeft) {
    Left<L, R> to = Either.obtainLeft(reuse, leftSerializer);
    L left = leftSerializer.deserialize(to.left(), source);
    to.setValue(left);
    return to;
  } else {
    Right<L, R> to = Either.obtainRight(reuse, rightSerializer);
    R right = rightSerializer.deserialize(to.right(), source);
    to.setValue(right);
    return to;
  }
}

代码示例来源:origin: apache/flink

@Override
public Either<L, R> copy(Either<L, R> from, Either<L, R> reuse) {
  if (from.isLeft()) {
    Left<L, R> to = Either.obtainLeft(reuse, leftSerializer);
    L left = leftSerializer.copy(from.left(), to.left());
    to.setValue(left);
    return to;
  } else {
    Right<L, R> to = Either.obtainRight(reuse, rightSerializer);
    R right = rightSerializer.copy(from.right(), to.right());
    to.setValue(right);
    return to;
  }
}

代码示例来源:origin: org.apache.flink/flink-core

@Override
public Either<L, R> deserialize(Either<L, R> reuse, DataInputView source) throws IOException {
  boolean isLeft = source.readBoolean();
  if (isLeft) {
    Left<L, R> to = Either.obtainLeft(reuse, leftSerializer);
    L left = leftSerializer.deserialize(to.left(), source);
    to.setValue(left);
    return to;
  } else {
    Right<L, R> to = Either.obtainRight(reuse, rightSerializer);
    R right = rightSerializer.deserialize(to.right(), source);
    to.setValue(right);
    return to;
  }
}

代码示例来源:origin: com.alibaba.blink/flink-core

@Override
public Either<L, R> deserialize(Either<L, R> reuse, DataInputView source) throws IOException {
  boolean isLeft = source.readBoolean();
  if (isLeft) {
    Left<L, R> to = Either.obtainLeft(reuse, leftSerializer);
    L left = leftSerializer.deserialize(to.left(), source);
    to.setValue(left);
    return to;
  } else {
    Right<L, R> to = Either.obtainRight(reuse, rightSerializer);
    R right = rightSerializer.deserialize(to.right(), source);
    to.setValue(right);
    return to;
  }
}

代码示例来源:origin: org.apache.flink/flink-core

@Override
public Either<L, R> copy(Either<L, R> from, Either<L, R> reuse) {
  if (from.isLeft()) {
    Left<L, R> to = Either.obtainLeft(reuse, leftSerializer);
    L left = leftSerializer.copy(from.left(), to.left());
    to.setValue(left);
    return to;
  } else {
    Right<L, R> to = Either.obtainRight(reuse, rightSerializer);
    R right = rightSerializer.copy(from.right(), to.right());
    to.setValue(right);
    return to;
  }
}

代码示例来源:origin: com.alibaba.blink/flink-core

@Override
public Either<L, R> copy(Either<L, R> from, Either<L, R> reuse) {
  if (from.isLeft()) {
    Left<L, R> to = Either.obtainLeft(reuse, leftSerializer);
    L left = leftSerializer.copy(from.left(), to.left());
    to.setValue(left);
    return to;
  } else {
    Right<L, R> to = Either.obtainRight(reuse, rightSerializer);
    R right = rightSerializer.copy(from.right(), to.right());
    to.setValue(right);
    return to;
  }
}

相关文章

微信公众号

最新文章

更多