Interface ArgsParser

All Superinterfaces:
ArgsParserMixin<ArgsParser>, org.refcodes.mixin.DescriptionAccessor, org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<ArgsParser>, org.refcodes.mixin.DescriptionAccessor.DescriptionMutator, org.refcodes.mixin.DescriptionAccessor.DescriptionProperty, org.refcodes.mixin.EscapeCodesStatusAccessor, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<ArgsParser>, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusMutator, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusProperty, org.refcodes.mixin.NameAccessor, org.refcodes.mixin.NameAccessor.NameBuilder<ArgsParser>, org.refcodes.mixin.NameAccessor.NameMutator, org.refcodes.mixin.NameAccessor.NameProperty, org.refcodes.mixin.Resetable, org.refcodes.mixin.ResetEscapeCodeAccessor, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<ArgsParser>, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeMutator, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeProperty, RootConditionAccessor, org.refcodes.textual.TextBoxGridAccessor, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<ArgsParser>, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridMutator, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridProperty, org.refcodes.mixin.TitleAccessor, org.refcodes.mixin.TitleAccessor.TitleBuilder<ArgsParser>, org.refcodes.mixin.TitleAccessor.TitleMutator, org.refcodes.mixin.TitleAccessor.TitleProperty
All Known Implementing Classes:
ArgsParserImpl

public interface ArgsParser extends ArgsParserMixin<ArgsParser>, org.refcodes.mixin.TitleAccessor.TitleProperty, org.refcodes.mixin.TitleAccessor.TitleBuilder<ArgsParser>, org.refcodes.mixin.NameAccessor.NameProperty, org.refcodes.mixin.NameAccessor.NameBuilder<ArgsParser>, org.refcodes.mixin.DescriptionAccessor.DescriptionProperty, org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<ArgsParser>, org.refcodes.mixin.Resetable, RootConditionAccessor, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusProperty, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<ArgsParser>, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeProperty, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<ArgsParser>, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridProperty, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<ArgsParser>
The ArgsParser provides means for parsing command line arguments and constructing a command line utility's help output.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.refcodes.mixin.DescriptionAccessor

    org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B extends org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<B>>, org.refcodes.mixin.DescriptionAccessor.DescriptionMutator, org.refcodes.mixin.DescriptionAccessor.DescriptionProperty

    Nested classes/interfaces inherited from interface org.refcodes.mixin.EscapeCodesStatusAccessor

    org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<B extends org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<B>>, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusMutator, org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusProperty

    Nested classes/interfaces inherited from interface org.refcodes.mixin.NameAccessor

    org.refcodes.mixin.NameAccessor.NameBuilder<B extends org.refcodes.mixin.NameAccessor.NameBuilder<B>>, org.refcodes.mixin.NameAccessor.NameMutator, org.refcodes.mixin.NameAccessor.NameProperty

    Nested classes/interfaces inherited from interface org.refcodes.mixin.ResetEscapeCodeAccessor

    org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<B extends org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<B>>, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeMutator, org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeProperty

    Nested classes/interfaces inherited from interface org.refcodes.textual.TextBoxGridAccessor

    org.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<B extends org.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<?>>, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridMutator, org.refcodes.textual.TextBoxGridAccessor.TextBoxGridProperty

    Nested classes/interfaces inherited from interface org.refcodes.mixin.TitleAccessor

    org.refcodes.mixin.TitleAccessor.TitleBuilder<B extends org.refcodes.mixin.TitleAccessor.TitleBuilder<B>>, org.refcodes.mixin.TitleAccessor.TitleMutator, org.refcodes.mixin.TitleAccessor.TitleProperty
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    addExample(String aDescription, Operand<?>... aOperands)
    Adds a usage example by providing a description of the example and the command line arguments required by the example.
    void
    addExample(Example aExample)
    Adds a usage example by providing a description of the example and the command line arguments required by the example.
    void
    errorLn(String aLine)
    Prints the given line to standard error with regards to to the console width as specified by the withConsoleWidth(int) method.
    List<? extends Operand<?>>
    evalArgs(String[] aArgs)
    Evaluates the provided command line arguments and determines the according values by evaluating the root ArgsSyntax.
    default List<? extends Operand<?>>
    Same as evalArgs(String[]) with the difference that the elements representing the arguments are passed as a list instead of an array.
    The root condition is the starting point node of a Syntaxable hierarchy to be traversed when determining the syntax for command line arguments or when evaluating the command line arguments.
    Retrieves the banner's border Escape-Code from the banner border Escape-Code property.
    Retrieves the banner's content Escape-Code from the banner Escape-Code property.
    Retrieves the command name's (CLI executable) Escape-Code from the command name Escape-Code property.
    Retrieves the copyright.
    Retrieves the description.
    Retrieves the parameter's description Escape-Code from the parameter's description Escape-Code property.
    Retrieves the Example instances as added using addExample(String, Operand...).
    Retrieves the license.
    Retrieves the line separator Escape-Code from the line separator Escape-Code property.
    Retrieves the option Escape-Code from the option Escape-Code property.
    Retrieves the parameter Escape-Code from the parameter Escape-Code property.
    char
    Gets the character to be used when printing a separator line with the printSeparatorLn() method.
    void
    Prints the banner; the banner most probably is an ASCII_HEADER_ASCII_BODY art text block which's look depends strongly on the taste of the author implementing this interface.
    default void
    Prints the help as of printHelp() without the banner.
    void
    Prints the copyright note as specified by the withCopyrightNote(String) method; with regards to to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints the description as set by the withDescription(String) method with regards to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints example usages as as added by the addExample(String, Operand...) method with regards to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints the header, which might be a simplified banner: Can be used when overriding methods such as printHelp() or printBanner().
    default void
    Prints the help to the standard output specified by the withStandardOut(PrintStream) method.
    void
    Prints the license note as specified by the withLicenseNote(String) method; with regards to to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints an empty line / a line break.
    void
    printLn(String aLine)
    Prints the given line to standard out with regards to to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints the Options (short- and the long-options), the Flages and the Operand and their description with regards to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints a separator line using the separator character as specified by the withSeparatorLnChar(char) method; with regards to to the console width as specified by the withConsoleWidth(int) method.
    void
    Prints the syntax as retrieved by the root ArgsSyntax element as of Synopsisable.toSynopsis(SyntaxNotation) with regards to the SyntaxNotation set by the withSyntaxNotation(SyntaxNotation) method.
    void
    setBannerBorderEscapeCode(String aBannerBorderEscCode)
    Sets the banner's border Escape-Code for the banner border Escape-Code property.
    void
    setBannerEscapeCode(String aBannerEscCode)
    Sets the banner's content Escape-Code for the banner Escape-Code property.
    void
    setBannerFont(org.refcodes.textual.Font aBannerFont)
    Sets the banner font.
    void
    setBannerFontPalette(char[] aColorPalette)
    Sets the banner font palette.
    void
    setCommandEscapeCode(String aCommandEscCode)
    Sets the command name's (CLI executable) Escape-Code for the command name Escape-Code property.
    void
    setConsoleWidth(int aConsoleWidth)
    Set the console with.
    void
    setCopyrightNote(String aCopyrightNote)
    Set the copyright note used by the printHelp() method when writing out the copyright claim and make other adjustments with the result (with regards to the Builder-Pattern).
    void
    setDescriptionEscapeCode(String aDescriptionEscCode)
    Sets the description Escape-Code for the description Escape-Code property.
    void
    Set the error out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
    void
    setLicenseNote(String aLicenseNote)
    Set the license note used by the printHelp() method when writing out the licensing conditions.
    void
    setLineBreak(String aLineBreak)
    Set the console's line break.
    void
    setLineSeparatorEscapeCode(String aLineSeparatorEscCode)
    Sets the line separator Escape-Code for the line separator Escape-Code property.
    void
    setMaxConsoleWidth(int aMaxConsoleWidth)
    Set the maximum console width to use in case the console width is greater than the maximum you want.
    void
    Sets the option Escape-Code for the option Escape-Code property.
    void
    setParamEscapeCode(String aParamEscCode)
    Sets the parameter Escape-Code for the parameter Escape-Code property.
    void
    setSeparatorLnChar(char aSeparatorLnChar)
    Set the character to be used when printing a separator line with the printSeparatorLn() method.
    void
    Set the standard out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
    void
    default ArgsParser
    withBannerBorderEscapeCode(String aBannerBorderEscCode)
    Sets the banner's border Escape-Code for the banner border Escape-Code property.
    default ArgsParser
    withBannerEscapeCode(String aBannerEscCode)
    Sets the banner's content Escape-Code for the banner Escape-Code property.
    default ArgsParser
    withBannerFont(org.refcodes.textual.Font aBannerFont)
    With banner font.
    default ArgsParser
    withBannerFontPalette(char[] aColorPalette)
    With banner font palette.
    default ArgsParser
    withCommandEscapeCode(String aCommandEscCode)
    Sets the command name's (CLI executable) Escape-Code for the command name Escape-Code property.
    default ArgsParser
    withConsoleWidth(int aConsoleWidth)
    Set the console with.
    default ArgsParser
    withCopyrightNote(String aCopyrightNote)
    Set the copyright note used by the printHelp() method when writing out the copyright claim and make other adjustments with the result (with regards to the Builder-Pattern).
    default ArgsParser
    withDescription(String aDescription)
    With description.
    default ArgsParser
    withDescriptionEscapeCode(String aDescriptionEscCode)
    Sets the description Escape-Code for the description Escape-Code property.
    default ArgsParser
    Set the error out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
    default ArgsParser
    withEscapeCodesEnabled(boolean isEscCodeEnabled)
    default ArgsParser
    Same as evalArgs(String[]) with the difference that this class's instance being invoked is returned as of the builder pattern.
    default ArgsParser
    Same as evalArgs(List) with the difference that this class's instance being invoked is returned as of the builder pattern.
    default ArgsParser
    withExample(String aDescription, Operand<?>... aOperands)
    Adds a usage example by providing a description of the example and the command line arguments required by the example.
    default ArgsParser
    withExample(Example aExample)
    Adds a usage example.
    default ArgsParser
    Adds all the bunch of Example elements provided.
    default ArgsParser
    withExamples(Example[] aExamples)
    Adds all the bunch of Example elements provided.
    default ArgsParser
    withLicenseNote(String aLicenseNote)
    Set the license note used by the printHelp() method when writing out the licensing conditions and make other adjustments with the result (with regards to the Builder-Pattern).
    default ArgsParser
    withLineBreak(String aLineBreak)
    Set the console's line break.
    default ArgsParser
    withLineSeparatorEscapeCode(String aLineSeparatorEscCode)
    Sets the line separator Escape-Code for the line separator Escape-Code property.
    default ArgsParser
    withMaxConsoleWidth(int aMaxConsoleWidth)
    Set the maximum console width to use in case the console width is greater than the maximum you want.
    default ArgsParser
    With name.
    default ArgsParser
    Sets the option Escape-Code for the option Escape-Code property.
    default ArgsParser
    withParamEscapeCode(String aParamEscCode)
    Sets the parameter Escape-Code for the parameter Escape-Code property.
    default ArgsParser
    withResetEscapeCode(String aResetEscCode)
    default ArgsParser
    withSeparatorLnChar(char aSeparatorLnChar)
    Set the character to be used when printing a separator line with the printSeparatorLn() method.
    default ArgsParser
    Set the standard out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
    default ArgsParser
    Set the SyntaxNotation and make other adjustments with the result (with regards to the Builder-Pattern).
    default ArgsParser
    withTextBoxGrid(org.refcodes.textual.TextBoxGrid aTextBoxGrid)
    default ArgsParser
    withTitle(String aTitle)
    With title.

    Methods inherited from interface org.refcodes.mixin.DescriptionAccessor.DescriptionMutator

    setDescription

    Methods inherited from interface org.refcodes.mixin.DescriptionAccessor.DescriptionProperty

    letDescription

    Methods inherited from interface org.refcodes.mixin.EscapeCodesStatusAccessor

    isEscapeCodesEnabled

    Methods inherited from interface org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusMutator

    setEscapeCodesEnabled

    Methods inherited from interface org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusProperty

    letEscapeCodesEnabled

    Methods inherited from interface org.refcodes.mixin.NameAccessor

    getName

    Methods inherited from interface org.refcodes.mixin.NameAccessor.NameMutator

    setName

    Methods inherited from interface org.refcodes.mixin.NameAccessor.NameProperty

    letName

    Methods inherited from interface org.refcodes.mixin.Resetable

    reset

    Methods inherited from interface org.refcodes.mixin.ResetEscapeCodeAccessor

    getResetEscapeCode

    Methods inherited from interface org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeMutator

    setResetEscapeCode

    Methods inherited from interface org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeProperty

    letResetEscapeCode

    Methods inherited from interface org.refcodes.textual.TextBoxGridAccessor

    getTextBoxGrid

    Methods inherited from interface org.refcodes.textual.TextBoxGridAccessor.TextBoxGridMutator

    setTextBoxGrid

    Methods inherited from interface org.refcodes.textual.TextBoxGridAccessor.TextBoxGridProperty

    letTextBoxGrid

    Methods inherited from interface org.refcodes.mixin.TitleAccessor

    getTitle

    Methods inherited from interface org.refcodes.mixin.TitleAccessor.TitleMutator

    setTitle

    Methods inherited from interface org.refcodes.mixin.TitleAccessor.TitleProperty

    letTitle
  • Method Details

    • errorLn

      void errorLn(String aLine)
      Prints the given line to standard error with regards to to the console width as specified by the withConsoleWidth(int) method.
      Parameters:
      aLine - The line to be printed.
    • evalArgs

      default List<? extends Operand<?>> evalArgs(List<String> aArgs) throws ArgsSyntaxException
      Same as evalArgs(String[]) with the difference that the elements representing the arguments are passed as a list instead of an array.
      Parameters:
      aArgs - The command line arguments to be evaluated.
      Returns:
      The list of evaluated command line arguments being instances of the Operand interfaces or its sub-types.
      Throws:
      ArgsSyntaxException - thrown in case of a command line arguments mismatch regarding provided and expected args.
    • evalArgs

      List<? extends Operand<?>> evalArgs(String[] aArgs) throws ArgsSyntaxException
      Evaluates the provided command line arguments and determines the according values by evaluating the root ArgsSyntax. In case of parsing failure, an according exception is thrown. ATTENTION: This method tests(!) for superfluous command line arguments being passed; e.g. command line arguments not being evaluated by any of the Syntaxable instance being traversed starting at the root ArgsSyntax will be reported. Business logic therefore should invoke this root node's evalArgs(String[]) method instead of a ArgsSyntax's Syntaxable.parseArgs(String[], String[]) method; as ignoring superfluous command line arguments will cause unexpected behavior from the point of view of the invoker.
      Parameters:
      aArgs - The command line arguments to be evaluated.
      Returns:
      The list of evaluated command line arguments being instances of the Operand interfaces or its sub-types.
      Throws:
      ArgsSyntaxException - thrown in case of a command line arguments mismatch regarding provided and expected args.
    • getCopyrightNote

      String getCopyrightNote()
      Retrieves the copyright.
      Returns:
      The copyright note.
    • getDescription

      String getDescription()
      Retrieves the description.
      Specified by:
      getDescription in interface org.refcodes.mixin.DescriptionAccessor
      Returns:
      The description.
    • getLicenseNote

      String getLicenseNote()
      Retrieves the license.
      Returns:
      The license note.
    • getCommandEscapeCode

      String getCommandEscapeCode()
      Retrieves the command name's (CLI executable) Escape-Code from the command name Escape-Code property.
      Returns:
      The command name's Escape-Code stored by the command name Escape-Code property.
    • getDescriptionEscapeCode

      String getDescriptionEscapeCode()
      Retrieves the parameter's description Escape-Code from the parameter's description Escape-Code property.
      Returns:
      The description Escape-Code stored by the description Escape-Code property.
    • getParamEscapeCode

      String getParamEscapeCode()
      Retrieves the parameter Escape-Code from the parameter Escape-Code property.
      Returns:
      The parameter Escape-Code stored by the parameter Escape-Code property.
    • getOptionEscapeCode

      String getOptionEscapeCode()
      Retrieves the option Escape-Code from the option Escape-Code property.
      Returns:
      The option Escape-Code stored by the option Escape-Code property.
    • getBannerEscapeCode

      String getBannerEscapeCode()
      Retrieves the banner's content Escape-Code from the banner Escape-Code property.
      Returns:
      The banner Escape-Code stored by the banner Escape-Code property.
    • getLineSeparatorEscapeCode

      String getLineSeparatorEscapeCode()
      Retrieves the line separator Escape-Code from the line separator Escape-Code property.
      Returns:
      The line separator Escape-Code stored by the line separator Escape-Code property.
    • getSeparatorLnChar

      char getSeparatorLnChar()
      Gets the character to be used when printing a separator line with the printSeparatorLn() method.
      Returns:
      aSeparatorChar The character used by the printSeparatorLn() method when printing out the line of characters..
    • getBannerBorderEscapeCode

      String getBannerBorderEscapeCode()
      Retrieves the banner's border Escape-Code from the banner border Escape-Code property.
      Returns:
      The banner border Escape-Code stored by the banner border Escape-Code property.
    • getArgsSyntax

      ArgsSyntax getArgsSyntax()
      The root condition is the starting point node of a Syntaxable hierarchy to be traversed when determining the syntax for command line arguments or when evaluating the command line arguments. Retrieves the root condition from the root condition property.
      Specified by:
      getArgsSyntax in interface RootConditionAccessor
      Returns:
      The root ArgsSyntax in which's syntax this parser is based.
    • getExamples

      List<Example> getExamples()
      Retrieves the Example instances as added using addExample(String, Operand...).
      Returns:
      The according Example elements.
    • addExample

      default void addExample(String aDescription, Operand<?>... aOperands)
      Adds a usage example by providing a description of the example and the command line arguments required by the example.
      Parameters:
      aDescription - The description of the example.
      aOperands - The command line arguments used by the example.
    • addExample

      void addExample(Example aExample)
      Adds a usage example by providing a description of the example and the command line arguments required by the example.
      Parameters:
      aExample - The description as well as the command line arguments used by the example.
    • withExample

      default ArgsParser withExample(Example aExample)
      Adds a usage example.
      Parameters:
      aExample - The Example to add.
      Returns:
      This instance as of the builder pattern.
    • withExample

      default ArgsParser withExample(String aDescription, Operand<?>... aOperands)
      Adds a usage example by providing a description of the example and the command line arguments required by the example.
      Parameters:
      aDescription - The description of the example.
      aOperands - The command line arguments used by the example.
      Returns:
      This instance as of the builder pattern.
    • withExamples

      default ArgsParser withExamples(Collection<Example> aExamples)
      Adds all the bunch of Example elements provided.
      Parameters:
      aExamples - The example usages to be added.
      Returns:
      This instance as of the builder pattern.
    • withExamples

      default ArgsParser withExamples(Example[] aExamples)
      Adds all the bunch of Example elements provided.
      Parameters:
      aExamples - The example usages to be added.
      Returns:
      This instance as of the builder pattern.
    • printHeader

      void printHeader()
      Prints the header, which might be a simplified banner: Can be used when overriding methods such as printHelp() or printBanner().
    • printBanner

      void printBanner()
      Prints the banner; the banner most probably is an ASCII_HEADER_ASCII_BODY art text block which's look depends strongly on the taste of the author implementing this interface.
    • printBody

      default void printBody()
      Prints the help as of printHelp() without the banner.
    • printCopyrightNote

      void printCopyrightNote()
      Prints the copyright note as specified by the withCopyrightNote(String) method; with regards to to the console width as specified by the withConsoleWidth(int) method.
    • printDescription

      void printDescription()
      Prints the description as set by the withDescription(String) method with regards to the console width as specified by the withConsoleWidth(int) method.
    • printExamples

      void printExamples()
      Prints example usages as as added by the addExample(String, Operand...) method with regards to the console width as specified by the withConsoleWidth(int) method.
    • printHelp

      default void printHelp()
      Prints the help to the standard output specified by the withStandardOut(PrintStream) method. This method can make use of the more atomic methods printBanner(), printSynopsis(), printDescription(), printOptions() or printSeparatorLn() to print a help text which's look depends strongly on the taste of the author implementing this interface. In case you dislike the implementing author's taste, feel free to overwrite this method and compose your own help text from the building blocks such as printBanner(), printSynopsis(), printDescription(), printOptions() or printSeparatorLn()
    • printLicenseNote

      void printLicenseNote()
      Prints the license note as specified by the withLicenseNote(String) method; with regards to to the console width as specified by the withConsoleWidth(int) method.
    • printLn

      void printLn()
      Prints an empty line / a line break.
    • printLn

      void printLn(String aLine)
      Prints the given line to standard out with regards to to the console width as specified by the withConsoleWidth(int) method.
      Parameters:
      aLine - The line to be printed.
    • printOptions

      void printOptions()
      Prints the Options (short- and the long-options), the Flages and the Operand and their description with regards to the console width as specified by the withConsoleWidth(int) method.
    • printSeparatorLn

      void printSeparatorLn()
      Prints a separator line using the separator character as specified by the withSeparatorLnChar(char) method; with regards to to the console width as specified by the withConsoleWidth(int) method.
    • printSynopsis

      void printSynopsis()
      Prints the syntax as retrieved by the root ArgsSyntax element as of Synopsisable.toSynopsis(SyntaxNotation) with regards to the SyntaxNotation set by the withSyntaxNotation(SyntaxNotation) method.
    • setBannerFont

      void setBannerFont(org.refcodes.textual.Font aBannerFont)
      Sets the banner font.
      Parameters:
      aBannerFont - the new banner font
    • setBannerFontPalette

      void setBannerFontPalette(char[] aColorPalette)
      Sets the banner font palette.
      Parameters:
      aColorPalette - the new banner font palette
    • setConsoleWidth

      void setConsoleWidth(int aConsoleWidth)
      Set the console with. A setting of "-1" makes the instance use the SystemUtility.getTerminalWidth() value, i.e. the console width is set automatically to be the width of your terminal.
      Parameters:
      aConsoleWidth - The width to set or -1 to let the parser automatically determine the console width.
    • setCopyrightNote

      void setCopyrightNote(String aCopyrightNote)
      Set the copyright note used by the printHelp() method when writing out the copyright claim and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aCopyrightNote - The license note printed out by the printHelp() method.
    • setErrorOut

      void setErrorOut(PrintStream aErrorOut)
      Set the error out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aErrorOut - The error out PrintStream to set.
    • setLicenseNote

      void setLicenseNote(String aLicenseNote)
      Set the license note used by the printHelp() method when writing out the licensing conditions.
      Parameters:
      aLicenseNote - The license note printed out by the printHelp() method.
    • setLineBreak

      void setLineBreak(String aLineBreak)
      Set the console's line break. A setting of null makes the instance use the SystemUtility.getLineBreak() value.
      Parameters:
      aLineBreak - the new line break
    • setMaxConsoleWidth

      void setMaxConsoleWidth(int aMaxConsoleWidth)
      Set the maximum console width to use in case the console width is greater than the maximum you want. This is most useful when the console width is determined automatically to be the width of your terminal.
      Parameters:
      aMaxConsoleWidth - the new max console width
    • setDescriptionEscapeCode

      void setDescriptionEscapeCode(String aDescriptionEscCode)
      Sets the description Escape-Code for the description Escape-Code property.
      Parameters:
      aDescriptionEscCode - The description Escape-Code to be stored by the description Escape-Code property.
    • setCommandEscapeCode

      void setCommandEscapeCode(String aCommandEscCode)
      Sets the command name's (CLI executable) Escape-Code for the command name Escape-Code property.
      Parameters:
      aCommandEscCode - The command name's Escape-Code to stored by the command name Escape-Code property.
    • setParamEscapeCode

      void setParamEscapeCode(String aParamEscCode)
      Sets the parameter Escape-Code for the parameter Escape-Code property.
      Parameters:
      aParamEscCode - The parameter Escape-Code to be stored by the parameter Escape-Code property.
    • setOptionEscapeCode

      void setOptionEscapeCode(String aOptEscCode)
      Sets the option Escape-Code for the option Escape-Code property.
      Parameters:
      aOptEscCode - The option Escape-Code to be stored by the option Escape-Code property.
    • setBannerEscapeCode

      void setBannerEscapeCode(String aBannerEscCode)
      Sets the banner's content Escape-Code for the banner Escape-Code property.
      Parameters:
      aBannerEscCode - The banner Escape-Code to be stored by the banner Escape-Code property.
    • setLineSeparatorEscapeCode

      void setLineSeparatorEscapeCode(String aLineSeparatorEscCode)
      Sets the line separator Escape-Code for the line separator Escape-Code property.
      Parameters:
      aLineSeparatorEscCode - The line separator Escape-Code to be stored by the line separator Escape-Code property.
    • setBannerBorderEscapeCode

      void setBannerBorderEscapeCode(String aBannerBorderEscCode)
      Sets the banner's border Escape-Code for the banner border Escape-Code property.
      Parameters:
      aBannerBorderEscCode - The banner border Escape-Code to be stored by the banner border Escape-Code property.
    • setSeparatorLnChar

      void setSeparatorLnChar(char aSeparatorLnChar)
      Set the character to be used when printing a separator line with the printSeparatorLn() method.
      Parameters:
      aSeparatorLnChar - The character used by the printSeparatorLn() method when printing out the line of characters..
    • setStandardOut

      void setStandardOut(PrintStream aStandardOut)
      Set the standard out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aStandardOut - The standard out PrintStream to set.
    • setSyntaxNotation

      void setSyntaxNotation(SyntaxNotation aSyntaxNotation)
      Parameters:
      aSyntaxNotation - The SyntaxNotation to set.
    • withTextBoxGrid

      default ArgsParser withTextBoxGrid(org.refcodes.textual.TextBoxGrid aTextBoxGrid)
      Specified by:
      withTextBoxGrid in interface org.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<ArgsParser>
    • withBannerFont

      default ArgsParser withBannerFont(org.refcodes.textual.Font aBannerFont)
      With banner font.
      Parameters:
      aBannerFont - the banner font
      Returns:
      the args parser
    • withBannerFontPalette

      default ArgsParser withBannerFontPalette(char[] aColorPalette)
      With banner font palette.
      Parameters:
      aColorPalette - the color palette
      Returns:
      the args parser
    • withConsoleWidth

      default ArgsParser withConsoleWidth(int aConsoleWidth)
      Set the console with. A setting of "-1" makes the instance use the SystemUtility.getTerminalWidth() value.
      Parameters:
      aConsoleWidth - The width to set.
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withCopyrightNote

      default ArgsParser withCopyrightNote(String aCopyrightNote)
      Set the copyright note used by the printHelp() method when writing out the copyright claim and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aCopyrightNote - The license note printed out by the printHelp() method.
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withDescription

      default ArgsParser withDescription(String aDescription)
      With description.
      Specified by:
      withDescription in interface org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<ArgsParser>
      Parameters:
      aDescription - the description
      Returns:
      the args parser
    • withErrorOut

      default ArgsParser withErrorOut(PrintStream aErrorOut)
      Set the error out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aErrorOut - The error out PrintStream to set.
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withEscapeCodesEnabled

      default ArgsParser withEscapeCodesEnabled(boolean isEscCodeEnabled)
      Specified by:
      withEscapeCodesEnabled in interface org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<ArgsParser>
    • withEvalArgs

      default ArgsParser withEvalArgs(List<String> aArgs) throws ArgsSyntaxException
      Same as evalArgs(List) with the difference that this class's instance being invoked is returned as of the builder pattern.
      Specified by:
      withEvalArgs in interface ArgsParserMixin<ArgsParser>
      Parameters:
      aArgs - The command line arguments to be evaluated.
      Returns:
      This invoked instance as of the builder pattern to chain method calls.
      Throws:
      ArgsSyntaxException - thrown in case of a command line arguments mismatch regarding provided and expected args.
    • withLicenseNote

      default ArgsParser withLicenseNote(String aLicenseNote)
      Set the license note used by the printHelp() method when writing out the licensing conditions and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aLicenseNote - The license note printed out by the printHelp() method.
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withLineBreak

      default ArgsParser withLineBreak(String aLineBreak)
      Set the console's line break. A setting of null makes the instance use the SystemUtility.getLineBreak() value.
      Parameters:
      aLineBreak - the line break
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withMaxConsoleWidth

      default ArgsParser withMaxConsoleWidth(int aMaxConsoleWidth)
      Set the maximum console width to use in case the console width is greater than the maximum you want. This is most useful when the console width is determined automatically to be the width of your terminal.
      Parameters:
      aMaxConsoleWidth - the max console width
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withName

      default ArgsParser withName(String aName)
      With name.
      Specified by:
      withName in interface org.refcodes.mixin.NameAccessor.NameBuilder<ArgsParser>
      Parameters:
      aName - the name
      Returns:
      the args parser
    • withDescriptionEscapeCode

      default ArgsParser withDescriptionEscapeCode(String aDescriptionEscCode)
      Sets the description Escape-Code for the description Escape-Code property.
      Parameters:
      aDescriptionEscCode - The parameter's description Escape-Code to be stored by the parameter's description Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withCommandEscapeCode

      default ArgsParser withCommandEscapeCode(String aCommandEscCode)
      Sets the command name's (CLI executable) Escape-Code for the command name Escape-Code property.
      Parameters:
      aCommandEscCode - The command name's Escape-Code to stored by the command name Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withParamEscapeCode

      default ArgsParser withParamEscapeCode(String aParamEscCode)
      Sets the parameter Escape-Code for the parameter Escape-Code property.
      Parameters:
      aParamEscCode - The parameter Escape-Code to be stored by the parameter Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withOptionEscapeCode

      default ArgsParser withOptionEscapeCode(String aOptEscCode)
      Sets the option Escape-Code for the option Escape-Code property.
      Parameters:
      aOptEscCode - The option Escape-Code to be stored by the option Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withBannerEscapeCode

      default ArgsParser withBannerEscapeCode(String aBannerEscCode)
      Sets the banner's content Escape-Code for the banner Escape-Code property.
      Parameters:
      aBannerEscCode - The banner Escape-Code to be stored by the banner Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withLineSeparatorEscapeCode

      default ArgsParser withLineSeparatorEscapeCode(String aLineSeparatorEscCode)
      Sets the line separator Escape-Code for the line separator Escape-Code property.
      Parameters:
      aLineSeparatorEscCode - The line separator Escape-Code to be stored by the line separator Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withBannerBorderEscapeCode

      default ArgsParser withBannerBorderEscapeCode(String aBannerBorderEscCode)
      Sets the banner's border Escape-Code for the banner border Escape-Code property.
      Parameters:
      aBannerBorderEscCode - The banner border Escape-Code to be stored by the banner border Escape-Code property.
      Returns:
      The builder for applying multiple build operations.
    • withEvalArgs

      default ArgsParser withEvalArgs(String[] aArgs) throws ArgsSyntaxException
      Same as evalArgs(String[]) with the difference that this class's instance being invoked is returned as of the builder pattern.
      Specified by:
      withEvalArgs in interface ArgsParserMixin<ArgsParser>
      Parameters:
      aArgs - The command line arguments to be evaluated.
      Returns:
      This invoked instance as of the builder pattern to chain method calls.
      Throws:
      ArgsSyntaxException - thrown in case of a command line arguments mismatch regarding provided and expected args.
    • withResetEscapeCode

      default ArgsParser withResetEscapeCode(String aResetEscCode)
      Specified by:
      withResetEscapeCode in interface org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<ArgsParser>
    • withSeparatorLnChar

      default ArgsParser withSeparatorLnChar(char aSeparatorLnChar)
      Set the character to be used when printing a separator line with the printSeparatorLn() method.
      Parameters:
      aSeparatorLnChar - The character used by the printSeparatorLn() method when printing out the line of characters..
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withStandardOut

      default ArgsParser withStandardOut(PrintStream aStandardOut)
      Set the standard out PrintStream and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aStandardOut - The standard out PrintStream to set.
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withSyntaxNotation

      default ArgsParser withSyntaxNotation(SyntaxNotation aSyntaxNotation)
      Set the SyntaxNotation and make other adjustments with the result (with regards to the Builder-Pattern).
      Parameters:
      aSyntaxNotation - The SyntaxNotation to set.
      Returns:
      This ArgsParser instance with regard to the builder pattern.
    • withTitle

      default ArgsParser withTitle(String aTitle)
      With title.
      Specified by:
      withTitle in interface org.refcodes.mixin.TitleAccessor.TitleBuilder<ArgsParser>
      Parameters:
      aTitle - the title
      Returns:
      the args parser