Package cloud.opencode.base.functional


package cloud.opencode.base.functional
OpenCode Functional - Functional Programming Utilities for JDK 25+ OpenCode 函数式编程工具库

Provides comprehensive functional programming utilities including Monads, Pattern Matching, Pipeline operations, and Lens optics for immutable data.

提供全面的函数式编程工具,包括 Monad 类型、模式匹配、管道操作和用于不可变数据的 Lens 光学类型。

Core Features | 核心功能:

Quick Start | 快速开始:

// Try - Exception handling
Try<User> user = Try.of(() -> userService.findById(id))
    .map(this::enrichUser)
    .recover(e -> User.DEFAULT);

// Either - Error handling
Either<Error, User> result = validateUser(input)
    .map(this::saveUser);

// Pipeline - Data transformation
String result = Pipeline.<String>start()
    .then(String::trim)
    .then(String::toUpperCase)
    .execute(input);

// Function composition
var addThenDouble = FunctionUtil.compose(x -> x + 1, x -> x * 2);

Dependencies | 依赖:

  • opencode-base-core - Tuple, basic functional interfaces
Since:
JDK 25, opencode-base-functional V1.0.0
Author:
Leon Soo www.LeonSoo.com
See Also: