Class VectorApiFifthIncubatorExamples

java.lang.Object
net.jrodolfo.java_evolution.java20.vector_api.VectorApiFifthIncubatorExamples

public class VectorApiFifthIncubatorExamples extends Object
Demonstrates the Java 20 Vector API, continued as a fifth incubator by JEP 438.

The repository itself does not compile against incubator modules. Instead, this example writes a small Java source file, compiles it with javac --add-modules jdk.incubator.vector --release 20, and runs it with java --add-modules jdk.incubator.vector. That keeps the main Maven build stable while still demonstrating the real incubator API.

  • Constructor Details

    • VectorApiFifthIncubatorExamples

      public VectorApiFifthIncubatorExamples()
  • Method Details

    • runVectorWorkflow

      Runs a real Java 20 Vector API workflow in a temporary workspace.
      Parameters:
      workspace - temporary directory for generated source and class files
      Returns:
      result containing compilation, class inspection, and execution output
      Throws:
      IOException - when source files cannot be written
      InterruptedException - when waiting for a child process is interrupted
    • probeSource

      public String probeSource()
      Source used by the child JVM to exercise the Java 20 incubator API.
      Returns:
      generated Java source
    • problemSolved

      public String problemSolved()
      Explains the practical problem.
      Returns:
      a short explanation
    • oldApproachProblem

      public String oldApproachProblem()
      Explains the common older approach.
      Returns:
      a short explanation
    • incubatorIdea

      public String incubatorIdea()
      Explains the Vector API idea.
      Returns:
      a short explanation
    • realUseCases

      public String realUseCases()
      Names realistic use cases.
      Returns:
      a short list of examples
    • incubatorStatus

      public String incubatorStatus()
      Describes the Java 20 maturity level.
      Returns:
      a short status note
    • incubatorBoundary

      public String incubatorBoundary()
      Explains why this example uses a child process.
      Returns:
      the incubator-module boundary
    • testBoundary

      public String testBoundary()
      Explains what this executable example can and cannot prove.
      Returns:
      the test boundary
    • nextStep

      public String nextStep()
      Points learners to the later Vector API module.
      Returns:
      a short next-step note