SetMultimapProperty.java 文件源码

java
阅读 28 收藏 0 点赞 0 评论 0

项目:FreeBuilder 作者:
@Override
public Optional<SetMultimapProperty> create(Config config) {
  DeclaredType type = maybeDeclared(config.getProperty().getType()).orNull();
  if (type == null || !erasesToAnyOf(type, SetMultimap.class, ImmutableSetMultimap.class)) {
    return Optional.absent();
  }

  TypeMirror keyType = upperBound(config.getElements(), type.getTypeArguments().get(0));
  TypeMirror valueType = upperBound(config.getElements(), type.getTypeArguments().get(1));
  Optional<TypeMirror> unboxedKeyType = maybeUnbox(keyType, config.getTypes());
  Optional<TypeMirror> unboxedValueType = maybeUnbox(valueType, config.getTypes());
  boolean overridesPutMethod =
      hasPutMethodOverride(config, unboxedKeyType.or(keyType), unboxedValueType.or(valueType));
  return Optional.of(new SetMultimapProperty(
      config.getMetadata(),
      config.getProperty(),
      overridesPutMethod,
      keyType,
      unboxedKeyType,
      valueType,
      unboxedValueType));
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号