Skip to content

LambdaExpr doesn't support void-typed return expressions #843

@chanseokoh

Description

@chanseokoh

https://github.com/googleapis/gapic-generator-java/blob/92f7c1cf7b343947a64943fd7ee7ffb4d67a9d5a/src/main/java/com/google/api/generator/engine/ast/LambdaExpr.java#L72-L74

LambdaExpr requires a ReturnExpr to be set. And LambdaExpr.build() explicitly forbids void-typed return expressions. So it's not possible to create a lambda like this:

    Runnable r1 = () -> System.out.println();
    Runnable r2 = () -> {
      System.out.println();
    };
    Runnable r3 = System.out::println;

Metadata

Metadata

Assignees

Labels

priority: p3Desirable enhancement or fix. May not be included in next release.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions