Class ConsoleLineExpander

java.lang.Object
org.jline.console.impl.ConsoleLineExpander
All Implemented Interfaces:
org.jline.shell.LineExpander

public class ConsoleLineExpander extends Object implements org.jline.shell.LineExpander
A LineExpander backed by a ConsoleEngine's parameter expansion.

This expander supports full ${expression} syntax with Groovy evaluation (or whatever script engine the ConsoleEngine is configured with), in addition to simple $variable expansion.

It delegates to ConsoleEngine.expandCommandLine(String) for the actual expansion logic, which supports script engine evaluation.

Example:

 ConsoleEngine engine = ...;
 LineExpander expander = new ConsoleLineExpander(engine);
 Shell.builder()
     .lineExpander(expander)
     .build();
 
Since:
4.0
  • Constructor Details

    • ConsoleLineExpander

      public ConsoleLineExpander(ConsoleEngine engine)
      Creates a new ConsoleLineExpander backed by the given engine.
      Parameters:
      engine - the console engine for parameter expansion
  • Method Details

    • expand

      public String expand(String line, org.jline.shell.CommandSession session)
      Specified by:
      expand in interface org.jline.shell.LineExpander