java.lang.Object
org.refcodes.cli.ArgsParser
- All Implemented Interfaces:
ArgsParserBuilder<ParseArgs>,ArgsProcessorBuilder<ParseArgs>,ArgsSyntaxAccessor,ArgsSyntaxAccessor.ArgsSyntaxBuilder<ParseArgs>,ArgsSyntaxAccessor.ArgsSyntaxMutator,ArgsSyntaxAccessor.ArgsSyntaxProperty,ArgumentEscapeCodeAccessor,ArgumentEscapeCodeAccessor.ArgumentEscapeCodeBuilder<ParseArgs>,ArgumentEscapeCodeAccessor.ArgumentEscapeCodeMutator,ArgumentEscapeCodeAccessor.ArgumentEscapeCodeProperty,BannerBorderEscapeCodeAccessor,BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeBuilder<ParseArgs>,BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeMutator,BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeProperty,BannerEscapeCodeAccessor,BannerEscapeCodeAccessor.BannerEscapeCodeBuilder<ParseArgs>,BannerEscapeCodeAccessor.BannerEscapeCodeMutator,BannerEscapeCodeAccessor.BannerEscapeCodeProperty,BannerFontAccessor,BannerFontAccessor.BannerFontBuilder<ParseArgs>,BannerFontAccessor.BannerFontMutator,BannerFontAccessor.BannerFontProperty,BannerFontPaletteAccessor,BannerFontPaletteAccessor.BannerFontPaletteBuilder<ParseArgs>,BannerFontPaletteAccessor.BannerFontPaletteMutator,BannerFontPaletteAccessor.BannerFontPaletteProperty,CliMetrics,CommandEscapeCodeAccessor,CommandEscapeCodeAccessor.CommandEscapeCodeBuilder<ParseArgs>,CommandEscapeCodeAccessor.CommandEscapeCodeMutator,CommandEscapeCodeAccessor.CommandEscapeCodeProperty,CopyrightAccessor,CopyrightAccessor.CopyrightBuilder<ParseArgs>,CopyrightAccessor.CopyrightMutator,CopyrightAccessor.CopyrightProperty,DescriptionEscapeCodeAccessor,DescriptionEscapeCodeAccessor.DescriptionEscapeCodeBuilder<ParseArgs>,DescriptionEscapeCodeAccessor.DescriptionEscapeCodeMutator,DescriptionEscapeCodeAccessor.DescriptionEscapeCodeProperty,ExamplesAccessor,ExamplesAccessor.ExamplesBuilder<ParseArgs>,ExamplesAccessor.ExamplesMutator,ExamplesAccessor.ExamplesProperty,LicenseAccessor,LicenseAccessor.LicenseBuilder<ParseArgs>,LicenseAccessor.LicenseMutator,LicenseAccessor.LicenseProperty,LineSeparatorEscapeCodeAccessor,LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeBuilder<ParseArgs>,LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeMutator,LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeProperty,LongOptionPrefixAccessor,LongOptionPrefixAccessor.LongOptionPrefixBuilder<ParseArgs>,LongOptionPrefixAccessor.LongOptionPrefixMutator,LongOptionPrefixAccessor.LongOptionPrefixProperty,Optionable,OptionEscapeCodeAccessor,OptionEscapeCodeAccessor.OptionEscapeCodeBuilder<ParseArgs>,OptionEscapeCodeAccessor.OptionEscapeCodeMutator,OptionEscapeCodeAccessor.OptionEscapeCodeProperty,ParseArgs,ShortOptionPrefixAccessor,ShortOptionPrefixAccessor.ShortOptionPrefixBuilder<ParseArgs>,ShortOptionPrefixAccessor.ShortOptionPrefixMutator,ShortOptionPrefixAccessor.ShortOptionPrefixProperty,SyntaxMetricsAccessor,SyntaxMetricsAccessor.SyntaxMetricsBuilder<ParseArgs>,SyntaxMetricsAccessor.SyntaxMetricsMutator,SyntaxMetricsAccessor.SyntaxMetricsProperty,org.refcodes.mixin.ConsoleWidthAccessor,org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthBuilder<ParseArgs>,org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthMutator,org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthProperty,org.refcodes.mixin.DescriptionAccessor,org.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<ParseArgs>,org.refcodes.mixin.DescriptionAccessor.DescriptionMutator,org.refcodes.mixin.DescriptionAccessor.DescriptionProperty,org.refcodes.mixin.EscapeCodesStatusAccessor,org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<ParseArgs>,org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusMutator,org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusProperty,org.refcodes.mixin.LineBreakAccessor,org.refcodes.mixin.LineBreakAccessor.LineBreakBuilder<ParseArgs>,org.refcodes.mixin.LineBreakAccessor.LineBreakMutator,org.refcodes.mixin.LineBreakAccessor.LineBreakProperty,org.refcodes.mixin.MaxConsoleWidthAccessor,org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthBuilder<ParseArgs>,org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthMutator,org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthProperty,org.refcodes.mixin.NameAccessor,org.refcodes.mixin.NameAccessor.NameBuilder<ParseArgs>,org.refcodes.mixin.NameAccessor.NameMutator,org.refcodes.mixin.NameAccessor.NameProperty,org.refcodes.mixin.Resetable,org.refcodes.mixin.ResetEscapeCodeAccessor,org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<ParseArgs>,org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeMutator,org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeProperty,org.refcodes.mixin.Schemable,org.refcodes.mixin.TitleAccessor,org.refcodes.mixin.TitleAccessor.TitleBuilder<ParseArgs>,org.refcodes.mixin.TitleAccessor.TitleMutator,org.refcodes.mixin.TitleAccessor.TitleProperty,org.refcodes.textual.TextBoxGridAccessor,org.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<ParseArgs>,org.refcodes.textual.TextBoxGridAccessor.TextBoxGridMutator,org.refcodes.textual.TextBoxGridAccessor.TextBoxGridProperty
A straightforward implementation of the
ParseArgs interface. The
constructor only provides means to set the required attributes as the
attributes to be adjusted optionally are already sufficiently preconfigured.
For adjusting them, a flavor of the Builder-Pattern is provided with which
you can easily chain the configuration of this instance; as them methods
return the instance of this class being configured. This helps to prevent the
telescoping constructor anti-pattern.
The SyntaxNotation is pre-set with the SyntaxNotation.LOGICAL
notation.
The console width id preconfigured with the console's width as determined by
the SystemUtility.getTerminalWidth().
The standard out PrintStream is preconfigured with the
System.out PrintStream.
The newline characters to be used for line breaks is "\r\n" on Windows
machines and "\"n" on all other machines as of the
SystemUtility.getLineBreak().
- See Also:
-
- "http://en.wikipedia.org/wiki/Builder_pattern"
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.refcodes.cli.ArgsSyntaxAccessor
ArgsSyntaxAccessor.ArgsSyntaxBuilder<B extends ArgsSyntaxAccessor.ArgsSyntaxBuilder<B>>, ArgsSyntaxAccessor.ArgsSyntaxMutator, ArgsSyntaxAccessor.ArgsSyntaxPropertyNested classes/interfaces inherited from interface org.refcodes.cli.ArgumentEscapeCodeAccessor
ArgumentEscapeCodeAccessor.ArgumentEscapeCodeBuilder<B extends ArgumentEscapeCodeAccessor.ArgumentEscapeCodeBuilder<B>>, ArgumentEscapeCodeAccessor.ArgumentEscapeCodeMutator, ArgumentEscapeCodeAccessor.ArgumentEscapeCodePropertyNested classes/interfaces inherited from interface org.refcodes.cli.BannerBorderEscapeCodeAccessor
BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeBuilder<B extends BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeBuilder<B>>, BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeMutator, BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodePropertyNested classes/interfaces inherited from interface org.refcodes.cli.BannerEscapeCodeAccessor
BannerEscapeCodeAccessor.BannerEscapeCodeBuilder<B extends BannerEscapeCodeAccessor.BannerEscapeCodeBuilder<B>>, BannerEscapeCodeAccessor.BannerEscapeCodeMutator, BannerEscapeCodeAccessor.BannerEscapeCodePropertyNested classes/interfaces inherited from interface org.refcodes.cli.BannerFontAccessor
BannerFontAccessor.BannerFontBuilder<B extends BannerFontAccessor.BannerFontBuilder<B>>, BannerFontAccessor.BannerFontMutator, BannerFontAccessor.BannerFontPropertyNested classes/interfaces inherited from interface org.refcodes.cli.BannerFontPaletteAccessor
BannerFontPaletteAccessor.BannerFontPaletteBuilder<B extends BannerFontPaletteAccessor.BannerFontPaletteBuilder<B>>, BannerFontPaletteAccessor.BannerFontPaletteMutator, BannerFontPaletteAccessor.BannerFontPalettePropertyNested classes/interfaces inherited from interface org.refcodes.cli.CommandEscapeCodeAccessor
CommandEscapeCodeAccessor.CommandEscapeCodeBuilder<B extends CommandEscapeCodeAccessor.CommandEscapeCodeBuilder<B>>, CommandEscapeCodeAccessor.CommandEscapeCodeMutator, CommandEscapeCodeAccessor.CommandEscapeCodePropertyNested classes/interfaces inherited from interface org.refcodes.mixin.ConsoleWidthAccessor
org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthBuilder<B extends org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthBuilder<B>>, org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthMutator, org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthPropertyNested classes/interfaces inherited from interface org.refcodes.cli.CopyrightAccessor
CopyrightAccessor.CopyrightBuilder<B extends CopyrightAccessor.CopyrightBuilder<B>>, CopyrightAccessor.CopyrightMutator, CopyrightAccessor.CopyrightPropertyNested 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.DescriptionPropertyNested classes/interfaces inherited from interface org.refcodes.cli.DescriptionEscapeCodeAccessor
DescriptionEscapeCodeAccessor.DescriptionEscapeCodeBuilder<B extends DescriptionEscapeCodeAccessor.DescriptionEscapeCodeBuilder<B>>, DescriptionEscapeCodeAccessor.DescriptionEscapeCodeMutator, DescriptionEscapeCodeAccessor.DescriptionEscapeCodePropertyNested 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.EscapeCodeStatusPropertyNested classes/interfaces inherited from interface org.refcodes.cli.ExamplesAccessor
ExamplesAccessor.ExamplesBuilder<B extends ExamplesAccessor.ExamplesBuilder<B>>, ExamplesAccessor.ExamplesMutator, ExamplesAccessor.ExamplesPropertyNested classes/interfaces inherited from interface org.refcodes.cli.LicenseAccessor
LicenseAccessor.LicenseBuilder<B extends LicenseAccessor.LicenseBuilder<B>>, LicenseAccessor.LicenseMutator, LicenseAccessor.LicensePropertyNested classes/interfaces inherited from interface org.refcodes.mixin.LineBreakAccessor
org.refcodes.mixin.LineBreakAccessor.LineBreakBuilder<B extends org.refcodes.mixin.LineBreakAccessor.LineBreakBuilder<B>>, org.refcodes.mixin.LineBreakAccessor.LineBreakMutator, org.refcodes.mixin.LineBreakAccessor.LineBreakPropertyNested classes/interfaces inherited from interface org.refcodes.cli.LineSeparatorEscapeCodeAccessor
LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeBuilder<B extends LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeBuilder<B>>, LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeMutator, LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodePropertyNested classes/interfaces inherited from interface org.refcodes.cli.LongOptionPrefixAccessor
LongOptionPrefixAccessor.LongOptionPrefixBuilder<B extends LongOptionPrefixAccessor.LongOptionPrefixBuilder<B>>, LongOptionPrefixAccessor.LongOptionPrefixMutator, LongOptionPrefixAccessor.LongOptionPrefixPropertyNested classes/interfaces inherited from interface org.refcodes.mixin.MaxConsoleWidthAccessor
org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthBuilder<B extends org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthBuilder<B>>, org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthMutator, org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthPropertyNested 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.NamePropertyNested classes/interfaces inherited from interface org.refcodes.cli.OptionEscapeCodeAccessor
OptionEscapeCodeAccessor.OptionEscapeCodeBuilder<B extends OptionEscapeCodeAccessor.OptionEscapeCodeBuilder<B>>, OptionEscapeCodeAccessor.OptionEscapeCodeMutator, OptionEscapeCodeAccessor.OptionEscapeCodePropertyNested 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.ResetEscapeCodePropertyNested classes/interfaces inherited from interface org.refcodes.cli.ShortOptionPrefixAccessor
ShortOptionPrefixAccessor.ShortOptionPrefixBuilder<B extends ShortOptionPrefixAccessor.ShortOptionPrefixBuilder<B>>, ShortOptionPrefixAccessor.ShortOptionPrefixMutator, ShortOptionPrefixAccessor.ShortOptionPrefixPropertyNested classes/interfaces inherited from interface org.refcodes.cli.SyntaxMetricsAccessor
SyntaxMetricsAccessor.SyntaxMetricsBuilder<B extends SyntaxMetricsAccessor.SyntaxMetricsBuilder<B>>, SyntaxMetricsAccessor.SyntaxMetricsMutator, SyntaxMetricsAccessor.SyntaxMetricsPropertyNested 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.TextBoxGridPropertyNested 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 -
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionConstructs theParseArgsinstance without any restrictions to the parsed arguments.ArgsParser(CliContext aCliCtx) Constructs theParseArgsinstance without any restrictions to the parsed arguments.ArgsParser(Term aArgsSyntax) Constructs theParseArgsinstance with the given rootConditionand the defaultSyntaxNotation.LOGICAL.ArgsParser(Term aArgsSyntax, CliContext aCliCtx) Constructs theParseArgsinstance with the given rootConditionand the defaultSyntaxNotation.LOGICAL. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddExample(Example aExampleUsage) Adds a usage example by providing a description of the example and the command line arguments required by the example.voidPrints the given line to standard error with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.Operand<?>[]Evaluates the provided command line arguments and determines the according values by evaluating the rootCondition.Retrieves the argument Escape-Code from the argument Escape-Code property.Retrieves the banner border Escape-Code from the banner border Escape-Code property.Retrieves the banner Escape-Code from the banner Escape-Code property.org.refcodes.textual.FontRetrieves the bannerFontfrom the bannerFontproperty.char[]Retrieves the banner font palette from the banner font palette property.Retrieves the command Escape-Code from the command Escape-Code property.intRetrieves the copyright from the copyright property.protected charThe delimiter to be used for colliding command line args when creating non colliding arg's aliases (keys for key/value-pairs).Retrieves the description Escape-Code from the description Escape-Code property.Example[]Retrieves the license from the license property.Retrieves the line separator Escape-Code from the line separator Escape-Code property.Retrieves the long option prefix from the long option prefix property.intgetName()Retrieves the option Escape-Code from the option Escape-Code property.charGets the character to be used when printing a separator line with theParseArgs.printSeparatorLn()method.Retrieves the short option prefix from the short option prefix property.Retrieves theSyntaxMetricsfrom theSyntaxMetricsproperty.org.refcodes.textual.TextBoxGridgetTitle()booleanvoidPrints 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.voidPrints the copyright note as specified by theParseArgs.withCopyright(String)method; with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidPrints the description as set by theParseArgs.withDescription(String)method with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidPrints example usages as as added by theParseArgs.addExample(String, Operand...)method with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidPrints the header, which might be a simplified banner: Can be used when overriding methods such asParseArgs.printHelp()orParseArgs.printBanner().voidPrints the license note as specified by theParseArgs.withLicense(String)method; with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidprintLn()Prints an empty line / a line break.voidPrints the given line to standard out with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidPrints theOptions (short- and the long-options), theFlages and theOperandand their description with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidPrints a separator line using the separator character as specified by theParseArgs.withSeparatorLnChar(char)method; with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.voidPrints the syntax as retrieved by the rootConditionelement as ofSynopsisable.toSynopsis(SyntaxNotation)with regards to theSyntaxNotationset by theParseArgs.withSyntaxMetrics(SyntaxMetrics)method.voidreset()voidsetArgsSyntax(Term aArgsSyntax) voidsetArgumentEscapeCode(String aParamEscapeCode) Sets the argument Escape-Code for the argument Escape-Code property.voidsetBannerBorderEscapeCode(String aBannerBorderEscapeCode) Sets the banner border Escape-Code for the banner border Escape-Code property.voidsetBannerEscapeCode(String aBannerEscapeCode) Sets the banner Escape-Code for the banner Escape-Code property.voidsetBannerFont(org.refcodes.textual.Font aBannerFont) Sets the bannerFontfor the bannerFontproperty.voidsetBannerFontPalette(char[] aColorPalette) Sets the banner font palette for the banner font palette property.voidsetBannerFontPalette(org.refcodes.data.AsciiColorPalette aBannerFontPalette) Sets the banner font palette for the banner font palette property.voidsetCommandEscapeCode(String aCommandEscapeCode) Sets the command Escape-Code for the command Escape-Code property.voidsetConsoleWidth(int aConsoleWidth) voidsetCopyright(String aCopyrightNote) Sets the copyright for the copyright property.voidsetDescription(String aDescription) voidsetDescriptionEscapeCode(String aDescriptionEscapeCode) Sets the description Escape-Code for the description Escape-Code property.voidsetErrorOut(PrintStream aErrorOut) Set the error outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).voidsetEscapeCodesEnabled(boolean isEscapeCodesEnabled) voidsetExamples(Example[] aExamples) voidsetLicense(String aLicenseNote) Sets the license for the license property.voidsetLineBreak(String aLineBreak) voidsetLineSeparatorEscapeCode(String aLineSeparatorEscapeCode) Sets the line separator Escape-Code for the line separator Escape-Code property.voidsetLongOptionPrefix(String aLongOptionPrefix) Sets the long option prefix for the long option prefix property.voidsetMaxConsoleWidth(int aMaxConsoleWidth) voidvoidsetOptionEscapeCode(String aOptEscapeCode) Sets the option Escape-Code for the option Escape-Code property.voidsetResetEscapeCode(String aResetEscapeCode) voidsetSeparatorLnChar(char aSeparatorLnChar) Set the character to be used when printing a separator line with theParseArgs.printSeparatorLn()method.voidsetShortOptionPrefix(Character aShortOptionPrefix) Sets the short option prefix for the short option prefix property.voidsetStandardOut(PrintStream aStandardOut) Set the standard outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).voidsetSyntaxMetrics(SyntaxMetrics aSyntaxMetrics) Sets theSyntaxMetricsfor theSyntaxMetricsproperty.voidsetTextBoxGrid(org.refcodes.textual.TextBoxGrid aTextBoxGrid) voidwithAddExample(String aDescription, Operand<?>... aOperands) Builder method adding an application'sExampleelement.withAddExample(Example aExamples) Builder method adding an application'sExampleelement.withArgsSyntax(Term aArgsSyntax) withArgumentEscapeCode(String aParamEscCode) Sets the argument Escape-Code for the argument Escape-Code property.withBannerBorderEscapeCode(String aBannerBorderEscCode) Sets the banner border Escape-Code for the banner border Escape-Code property.withBannerEscapeCode(String aBannerEscCode) Sets the banner Escape-Code for the banner Escape-Code property.withBannerFont(org.refcodes.textual.Font aBannerFont) Sets the bannerFontfor the bannerFontproperty.withBannerFontPalette(char[] aColorPalette) Sets the banner font palette for the banner font palette property.withBannerFontPalette(org.refcodes.data.AsciiColorPalette aBannerFontPalette) Sets the banner font palette for the banner font palette property.withCommandEscapeCode(String aCommandEscCode) Sets the command Escape-Code for the command Escape-Code property.withConsoleWidth(int aConsoleWidth) withCopyright(String aCopyright) Sets the copyright for the copyright property.withDescription(String aDescription) withDescriptionEscapeCode(String aDescriptionEscCode) Sets the description Escape-Code for the description Escape-Code property.withErrorOut(PrintStream aErrorOut) Set the error outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).withEscapeCodesEnabled(boolean aIsEscCodeEnabled) withEvalArgs(String[] aArgs) Evaluates the provided command line arguments.withEvalArgs(String[] aArgs, Pattern aFilterExp) Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedPattern.withEvalArgs(String[] aArgs, ArgsFilter aArgsFilter) Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedArgsFilter.withEvalArgs(List<String> aArgs) Evaluates the provided command line arguments .withEvalArgs(List<String> aArgs, Pattern aFilterExp) Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedPattern.withEvalArgs(List<String> aArgs, ArgsFilter aArgsFilter) Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedArgsFilter.withExamples(Collection<Example> aExamples) Builder method providing the application'sExampleelements.withExamples(Example[] aExamples) withLicense(String aLicense) Sets the license for the license property.withLineBreak(String aLineBreak) withLineSeparatorEscapeCode(String aLineSeparatorEscCode) Sets the line separator Escape-Code for the line separator Escape-Code property.withLongOptionPrefix(String aLongOptionPrefix) Sets the long option prefix for the long option prefix property.withMaxConsoleWidth(int aMaxConsoleWidth) withOptionEscapeCode(String aOptEscCode) Sets the option Escape-Code for the option Escape-Code property.withResetEscapeCode(String aResetEscCode) withSeparatorLnChar(char aSeparatorLnChar) Builder method adding an separator line char.withShortOptionPrefix(Character aShortOptionPrefix) Sets the short option prefix for the short option prefix property.withStandardOut(PrintStream aStandardOut) Set the standard outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).withSyntaxMetrics(SyntaxMetrics aSyntaxMetrics) Sets theSyntaxMetricsfor theSyntaxMetricsproperty.withSyntaxMetrics(SyntaxNotation aSyntaxNotation) Sets theSyntaxNotationfor theSyntaxNotationproperty.withTextBoxGrid(org.refcodes.textual.TextBoxGrid aTextBoxGrid) withTextBoxGrid(org.refcodes.textual.TextBoxStyle aTextBoxStyle) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.refcodes.cli.ArgsSyntaxAccessor.ArgsSyntaxProperty
letArgsSyntaxMethods inherited from interface org.refcodes.cli.ArgumentEscapeCodeAccessor.ArgumentEscapeCodeProperty
letArgumentEscapeCodeMethods inherited from interface org.refcodes.cli.BannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeProperty
letBannerBorderEscapeCodeMethods inherited from interface org.refcodes.cli.BannerEscapeCodeAccessor.BannerEscapeCodeProperty
letBannerEscapeCodeMethods inherited from interface org.refcodes.cli.BannerFontAccessor.BannerFontProperty
letBannerFontMethods inherited from interface org.refcodes.cli.BannerFontPaletteAccessor.BannerFontPaletteProperty
letBannerFontPaletteMethods inherited from interface org.refcodes.cli.CommandEscapeCodeAccessor.CommandEscapeCodeProperty
letCommandEscapeCodeMethods inherited from interface org.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthProperty
letConsoleWidthMethods inherited from interface org.refcodes.cli.CopyrightAccessor.CopyrightProperty
letCopyrightMethods inherited from interface org.refcodes.mixin.DescriptionAccessor.DescriptionProperty
letDescriptionMethods inherited from interface org.refcodes.cli.DescriptionEscapeCodeAccessor.DescriptionEscapeCodeProperty
letDescriptionEscapeCodeMethods inherited from interface org.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusProperty
letEscapeCodesEnabledMethods inherited from interface org.refcodes.cli.ExamplesAccessor.ExamplesMutator
setExamplesMethods inherited from interface org.refcodes.cli.ExamplesAccessor.ExamplesProperty
letExamplesMethods inherited from interface org.refcodes.cli.LicenseAccessor.LicenseProperty
letLicenseMethods inherited from interface org.refcodes.mixin.LineBreakAccessor.LineBreakProperty
letLineBreakMethods inherited from interface org.refcodes.cli.LineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeProperty
letLineSeparatorEscapeCodeMethods inherited from interface org.refcodes.cli.LongOptionPrefixAccessor.LongOptionPrefixProperty
letLongOptionPrefixMethods inherited from interface org.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthProperty
letMaxConsoleWidthMethods inherited from interface org.refcodes.mixin.NameAccessor.NameProperty
letNameMethods inherited from interface org.refcodes.cli.OptionEscapeCodeAccessor.OptionEscapeCodeProperty
letOptionEscapeCodeMethods inherited from interface org.refcodes.cli.ParseArgs
addExample, evalArgs, evalArgs, evalArgs, evalArgs, evalArgs, printBody, printHelp, toOptions, toSchemaMethods inherited from interface org.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeProperty
letResetEscapeCodeMethods inherited from interface org.refcodes.cli.ShortOptionPrefixAccessor.ShortOptionPrefixProperty
letShortOptionPrefixMethods inherited from interface org.refcodes.cli.SyntaxMetricsAccessor.SyntaxMetricsMutator
setSyntaxMetricsMethods inherited from interface org.refcodes.cli.SyntaxMetricsAccessor.SyntaxMetricsProperty
letSyntaxMetrics, letSyntaxMetricsMethods inherited from interface org.refcodes.textual.TextBoxGridAccessor.TextBoxGridMutator
setTextBoxGridMethods inherited from interface org.refcodes.textual.TextBoxGridAccessor.TextBoxGridProperty
letTextBoxGrid, letTextBoxGridMethods inherited from interface org.refcodes.mixin.TitleAccessor.TitleProperty
letTitle
-
Field Details
-
_errStream
-
_stdStream
-
-
Constructor Details
-
ArgsParser
public ArgsParser()Constructs theParseArgsinstance without any restrictions to the parsed arguments. The constructor only provides means to set the required attributes as the attributes to be adjusted optionally are already sufficiently preconfigured. For adjusting them, a flavor of the Builder-Pattern is provided with which you can easily chain the configuration of this instance; as them methods return the instance of this class being configured. -
ArgsParser
Constructs theParseArgsinstance without any restrictions to the parsed arguments. The constructor only provides means to set the required attributes as the attributes to be adjusted optionally are already sufficiently preconfigured. For adjusting them, a flavor of the Builder-Pattern is provided with which you can easily chain the configuration of this instance; as them methods return the instance of this class being configured.- Parameters:
aCliCtx- TheCliContextto be used for initializing.
-
ArgsParser
Constructs theParseArgsinstance with the given rootConditionand the defaultSyntaxNotation.LOGICAL. The constructor only provides means to set the required attributes as the attributes to be adjusted optionally are already sufficiently preconfigured. For adjusting them, a flavor of the Builder-Pattern is provided with which you can easily chain the configuration of this instance; as them methods return the instance of this class being configured.- Parameters:
aArgsSyntax- The args syntax rootTermnode being the node from which parsing the command line arguments starts.
-
ArgsParser
Constructs theParseArgsinstance with the given rootConditionand the defaultSyntaxNotation.LOGICAL. The constructor only provides means to set the required attributes as the attributes to be adjusted optionally are already sufficiently preconfigured. For adjusting them, a flavor of the Builder-Pattern is provided with which you can easily chain the configuration of this instance; as them methods return the instance of this class being configured.- Parameters:
aArgsSyntax- The args syntax rootTermnode being the node from which parsing the command line arguments starts.aCliCtx- TheCliContextto be used for initializing.
-
-
Method Details
-
addExample
Adds a usage example by providing a description of the example and the command line arguments required by the example.- Specified by:
addExamplein interfaceParseArgs- Parameters:
aExampleUsage- The description as well as the command line arguments used by the example.
-
errorLn
Prints the given line to standard error with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method. -
evalArgs
Evaluates the provided command line arguments and determines the according values by evaluating the rootCondition. 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 theTerminstance being traversed starting at the rootConditionwill be reported. Business logic therefore should invoke this root node'sParseArgs.evalArgs(String[])method instead of aCondition'sTerm.parseArgs(String[], String[], CliContext)method; as ignoring superfluous command line arguments will aCause unexpected behavior from the point of view of the invoker.- Specified by:
evalArgsin interfaceParseArgs- Parameters:
aArgs- The command line arguments to be evaluated.- Returns:
- The list of evaluated command line arguments being instances of
the
Operandinterfaces or its sub-types. In case anOperandimplements theApprovableinterface or inherits from theAbstractOperandtype, then theOperandis also approved by invokingApprovable.approve()orAbstractOperand.approve()(which may trigger a registered lambda expression). - Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
getArgsSyntax
- Specified by:
getArgsSyntaxin interfaceArgsSyntaxAccessor- Specified by:
getArgsSyntaxin interfaceParseArgs- Returns:
- The (root)
Termstored by the (root)Termproperty.
-
getArgumentEscapeCode
Retrieves the argument Escape-Code from the argument Escape-Code property.- Specified by:
getArgumentEscapeCodein interfaceArgumentEscapeCodeAccessor- Specified by:
getArgumentEscapeCodein interfaceParseArgs- Returns:
- The argument Escape-Code stored by the argument Escape-Code property.
-
getBannerBorderEscapeCode
Retrieves the banner border Escape-Code from the banner border Escape-Code property.- Specified by:
getBannerBorderEscapeCodein interfaceBannerBorderEscapeCodeAccessor- Specified by:
getBannerBorderEscapeCodein interfaceParseArgs- Returns:
- The banner border Escape-Code stored by the banner border Escape-Code property.
-
getBannerEscapeCode
Retrieves the banner Escape-Code from the banner Escape-Code property.- Specified by:
getBannerEscapeCodein interfaceBannerEscapeCodeAccessor- Specified by:
getBannerEscapeCodein interfaceParseArgs- Returns:
- The banner Escape-Code stored by the banner Escape-Code property.
-
getBannerFont
public org.refcodes.textual.Font getBannerFont()Retrieves the bannerFontfrom the bannerFontproperty.- Specified by:
getBannerFontin interfaceBannerFontAccessor- Returns:
- The banner
Fontstored by the bannerFontproperty.
-
getBannerFontPalette
public char[] getBannerFontPalette()Retrieves the banner font palette from the banner font palette property.- Specified by:
getBannerFontPalettein interfaceBannerFontPaletteAccessor- Returns:
- The banner font palette stored by the banner font palette property.
-
getCommandEscapeCode
Retrieves the command Escape-Code from the command Escape-Code property.- Specified by:
getCommandEscapeCodein interfaceCommandEscapeCodeAccessor- Specified by:
getCommandEscapeCodein interfaceParseArgs- Returns:
- The command Escape-Code stored by the command Escape-Code property.
-
getConsoleWidth
public int getConsoleWidth()- Specified by:
getConsoleWidthin interfaceorg.refcodes.mixin.ConsoleWidthAccessor
-
getCopyright
Retrieves the copyright from the copyright property.- Specified by:
getCopyrightin interfaceCopyrightAccessor- Specified by:
getCopyrightin interfaceParseArgs- Returns:
- The copyright stored by the copyright property.
-
getDescription
- Specified by:
getDescriptionin interfaceorg.refcodes.mixin.DescriptionAccessor- Specified by:
getDescriptionin interfaceParseArgs
-
getDescriptionEscapeCode
Retrieves the description Escape-Code from the description Escape-Code property.- Specified by:
getDescriptionEscapeCodein interfaceDescriptionEscapeCodeAccessor- Specified by:
getDescriptionEscapeCodein interfaceParseArgs- Returns:
- The description Escape-Code stored by the description Escape-Code property.
-
getExamples
- Specified by:
getExamplesin interfaceExamplesAccessor- Specified by:
getExamplesin interfaceParseArgs- Returns:
- The
Exampleinstances stored by theExampleinstances property.
-
getLicense
Retrieves the license from the license property.- Specified by:
getLicensein interfaceLicenseAccessor- Specified by:
getLicensein interfaceParseArgs- Returns:
- The license stored by the license property.
-
getLineBreak
- Specified by:
getLineBreakin interfaceorg.refcodes.mixin.LineBreakAccessor
-
getLineSeparatorEscapeCode
Retrieves the line separator Escape-Code from the line separator Escape-Code property.- Specified by:
getLineSeparatorEscapeCodein interfaceLineSeparatorEscapeCodeAccessor- Specified by:
getLineSeparatorEscapeCodein interfaceParseArgs- Returns:
- The line separator Escape-Code stored by the line separator Escape-Code property.
-
getLongOptionPrefix
Retrieves the long option prefix from the long option prefix property.- Specified by:
getLongOptionPrefixin interfaceLongOptionPrefixAccessor- Returns:
- The long option prefix stored by the long option prefix property.
-
getMaxConsoleWidth
public int getMaxConsoleWidth()- Specified by:
getMaxConsoleWidthin interfaceorg.refcodes.mixin.MaxConsoleWidthAccessor
-
getName
- Specified by:
getNamein interfaceorg.refcodes.mixin.NameAccessor
-
getOptionEscapeCode
Retrieves the option Escape-Code from the option Escape-Code property.- Specified by:
getOptionEscapeCodein interfaceOptionEscapeCodeAccessor- Specified by:
getOptionEscapeCodein interfaceParseArgs- Returns:
- The option Escape-Code stored by the option Escape-Code property.
-
getResetEscapeCode
- Specified by:
getResetEscapeCodein interfaceorg.refcodes.mixin.ResetEscapeCodeAccessor
-
getSeparatorLnChar
public char getSeparatorLnChar()Gets the character to be used when printing a separator line with theParseArgs.printSeparatorLn()method.- Specified by:
getSeparatorLnCharin interfaceParseArgs- Returns:
- aSeparatorChar The character used by the
ParseArgs.printSeparatorLn()method when printing out the line of characters..
-
getShortOptionPrefix
Retrieves the short option prefix from the short option prefix property.- Specified by:
getShortOptionPrefixin interfaceShortOptionPrefixAccessor- Returns:
- The short option prefix stored by the short option prefix property.
-
getSyntaxMetrics
Retrieves theSyntaxMetricsfrom theSyntaxMetricsproperty.- Specified by:
getSyntaxMetricsin interfaceSyntaxMetricsAccessor- Returns:
- The
SyntaxMetricsstored by the decorator (enabled) tags property.
-
getTextBoxGrid
public org.refcodes.textual.TextBoxGrid getTextBoxGrid()- Specified by:
getTextBoxGridin interfaceorg.refcodes.textual.TextBoxGridAccessor
-
getTitle
- Specified by:
getTitlein interfaceorg.refcodes.mixin.TitleAccessor
-
isEscapeCodesEnabled
public boolean isEscapeCodesEnabled()- Specified by:
isEscapeCodesEnabledin interfaceorg.refcodes.mixin.EscapeCodesStatusAccessor
-
printBanner
public 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.- Specified by:
printBannerin interfaceParseArgs
-
printCopyright
public void printCopyright()Prints the copyright note as specified by theParseArgs.withCopyright(String)method; with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.- Specified by:
printCopyrightin interfaceParseArgs
-
printDescription
public void printDescription()Prints the description as set by theParseArgs.withDescription(String)method with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.- Specified by:
printDescriptionin interfaceParseArgs
-
printExamples
public void printExamples()Prints example usages as as added by theParseArgs.addExample(String, Operand...)method with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.- Specified by:
printExamplesin interfaceParseArgs
-
printHeader
public void printHeader()Prints the header, which might be a simplified banner: Can be used when overriding methods such asParseArgs.printHelp()orParseArgs.printBanner().- Specified by:
printHeaderin interfaceParseArgs
-
printLicense
public void printLicense()Prints the license note as specified by theParseArgs.withLicense(String)method; with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.- Specified by:
printLicensein interfaceParseArgs
-
printLn
public void printLn()Prints an empty line / a line break. -
printLn
Prints the given line to standard out with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method. -
printOptions
public void printOptions()Prints theOptions (short- and the long-options), theFlages and theOperandand their description with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.- Specified by:
printOptionsin interfaceParseArgs
-
printSeparatorLn
public void printSeparatorLn()Prints a separator line using the separator character as specified by theParseArgs.withSeparatorLnChar(char)method; with regards to the console width as specified by theParseArgs.withConsoleWidth(int)method.- Specified by:
printSeparatorLnin interfaceParseArgs
-
printSynopsis
public void printSynopsis()Prints the syntax as retrieved by the rootConditionelement as ofSynopsisable.toSynopsis(SyntaxNotation)with regards to theSyntaxNotationset by theParseArgs.withSyntaxMetrics(SyntaxMetrics)method.- Specified by:
printSynopsisin interfaceParseArgs
-
reset
public void reset()- Specified by:
resetin interfaceorg.refcodes.mixin.Resetable
-
setArgsSyntax
- Specified by:
setArgsSyntaxin interfaceArgsSyntaxAccessor.ArgsSyntaxMutator- Parameters:
aArgsSyntax- The (root)Termto be stored by the (root)Termproperty.
-
setArgumentEscapeCode
Sets the argument Escape-Code for the argument Escape-Code property.- Specified by:
setArgumentEscapeCodein interfaceArgumentEscapeCodeAccessor.ArgumentEscapeCodeMutator- Parameters:
aParamEscapeCode- The argument Escape-Code to be stored by the argument Escape-Code property.
-
setBannerBorderEscapeCode
Sets the banner border Escape-Code for the banner border Escape-Code property.- Specified by:
setBannerBorderEscapeCodein interfaceBannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeMutator- Parameters:
aBannerBorderEscapeCode- The banner border Escape-Code to be stored by the banner border Escape-Code property.
-
setBannerEscapeCode
Sets the banner Escape-Code for the banner Escape-Code property.- Specified by:
setBannerEscapeCodein interfaceBannerEscapeCodeAccessor.BannerEscapeCodeMutator- Parameters:
aBannerEscapeCode- The banner Escape-Code to be stored by the banner Escape-Code property.
-
setBannerFont
public void setBannerFont(org.refcodes.textual.Font aBannerFont) Sets the bannerFontfor the bannerFontproperty.- Specified by:
setBannerFontin interfaceBannerFontAccessor.BannerFontMutator- Parameters:
aBannerFont- The bannerFontto be stored by the bannerFontproperty.
-
setBannerFontPalette
public void setBannerFontPalette(org.refcodes.data.AsciiColorPalette aBannerFontPalette) Sets the banner font palette for the banner font palette property.- Specified by:
setBannerFontPalettein interfaceBannerFontPaletteAccessor.BannerFontPaletteMutator- Parameters:
aBannerFontPalette- The banner font palette to be stored by the banner palette property.
-
setBannerFontPalette
public void setBannerFontPalette(char[] aColorPalette) Sets the banner font palette for the banner font palette property.- Specified by:
setBannerFontPalettein interfaceBannerFontPaletteAccessor.BannerFontPaletteMutator- Parameters:
aColorPalette- The banner font palette to be stored by the banner palette property.
-
setCommandEscapeCode
Sets the command Escape-Code for the command Escape-Code property.- Specified by:
setCommandEscapeCodein interfaceCommandEscapeCodeAccessor.CommandEscapeCodeMutator- Parameters:
aCommandEscapeCode- The command Escape-Code to be stored by the command Escape-Code property.
-
setConsoleWidth
public void setConsoleWidth(int aConsoleWidth) - Specified by:
setConsoleWidthin interfaceorg.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthMutator
-
setCopyright
Sets the copyright for the copyright property.- Specified by:
setCopyrightin interfaceCopyrightAccessor.CopyrightMutator- Parameters:
aCopyrightNote- The copyright to be stored by the console width property.
-
setDescription
- Specified by:
setDescriptionin interfaceorg.refcodes.mixin.DescriptionAccessor.DescriptionMutator
-
setDescriptionEscapeCode
Sets the description Escape-Code for the description Escape-Code property.- Specified by:
setDescriptionEscapeCodein interfaceDescriptionEscapeCodeAccessor.DescriptionEscapeCodeMutator- Parameters:
aDescriptionEscapeCode- The description Escape-Code to be stored by the description Escape-Code property.
-
setErrorOut
Set the error outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).- Specified by:
setErrorOutin interfaceParseArgs- Parameters:
aErrorOut- The error outPrintStreamto set.
-
setEscapeCodesEnabled
public void setEscapeCodesEnabled(boolean isEscapeCodesEnabled) - Specified by:
setEscapeCodesEnabledin interfaceorg.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusMutator
-
setExamples
- Specified by:
setExamplesin interfaceExamplesAccessor.ExamplesMutator- Parameters:
aExamples- TheExampleinstances to be stored.
-
setLicense
Sets the license for the license property.- Specified by:
setLicensein interfaceLicenseAccessor.LicenseMutator- Parameters:
aLicenseNote- The license to be stored by the console width property.
-
setLineBreak
- Specified by:
setLineBreakin interfaceorg.refcodes.mixin.LineBreakAccessor.LineBreakMutator
-
setLineSeparatorEscapeCode
Sets the line separator Escape-Code for the line separator Escape-Code property.- Specified by:
setLineSeparatorEscapeCodein interfaceLineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeMutator- Specified by:
setLineSeparatorEscapeCodein interfaceParseArgs- Parameters:
aLineSeparatorEscapeCode- The line separator Escape-Code to be stored by the line separator Escape-Code property.
-
setLongOptionPrefix
Sets the long option prefix for the long option prefix property.- Specified by:
setLongOptionPrefixin interfaceLongOptionPrefixAccessor.LongOptionPrefixMutator- Parameters:
aLongOptionPrefix- The long option prefix to be stored by the long option prefix property.
-
setMaxConsoleWidth
public void setMaxConsoleWidth(int aMaxConsoleWidth) - Specified by:
setMaxConsoleWidthin interfaceorg.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthMutator
-
setName
- Specified by:
setNamein interfaceorg.refcodes.mixin.NameAccessor.NameMutator
-
setOptionEscapeCode
Sets the option Escape-Code for the option Escape-Code property.- Specified by:
setOptionEscapeCodein interfaceOptionEscapeCodeAccessor.OptionEscapeCodeMutator- Parameters:
aOptEscapeCode- The option Escape-Code to be stored by the option Escape-Code property.
-
setResetEscapeCode
- Specified by:
setResetEscapeCodein interfaceorg.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeMutator
-
setSeparatorLnChar
public void setSeparatorLnChar(char aSeparatorLnChar) Set the character to be used when printing a separator line with theParseArgs.printSeparatorLn()method.- Specified by:
setSeparatorLnCharin interfaceParseArgs- Parameters:
aSeparatorLnChar- The character used by theParseArgs.printSeparatorLn()method when printing out the line of characters..
-
setShortOptionPrefix
Sets the short option prefix for the short option prefix property.- Specified by:
setShortOptionPrefixin interfaceShortOptionPrefixAccessor.ShortOptionPrefixMutator- Parameters:
aShortOptionPrefix- The short option prefix to be stored by the short option prefix property.
-
setStandardOut
Set the standard outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).- Specified by:
setStandardOutin interfaceParseArgs- Parameters:
aStandardOut- The standard outPrintStreamto set.
-
setSyntaxMetrics
Sets theSyntaxMetricsfor theSyntaxMetricsproperty.- Specified by:
setSyntaxMetricsin interfaceParseArgs- Specified by:
setSyntaxMetricsin interfaceSyntaxMetricsAccessor.SyntaxMetricsMutator- Parameters:
aSyntaxMetrics- TheSyntaxMetricsto be stored by theSyntaxMetricsproperty.
-
setTextBoxGrid
public void setTextBoxGrid(org.refcodes.textual.TextBoxGrid aTextBoxGrid) - Specified by:
setTextBoxGridin interfaceorg.refcodes.textual.TextBoxGridAccessor.TextBoxGridMutator
-
setTitle
- Specified by:
setTitlein interfaceorg.refcodes.mixin.TitleAccessor.TitleMutator
-
withAddExample
Builder method adding an application'sExampleelement.- Specified by:
withAddExamplein interfaceArgsProcessorBuilder<ParseArgs>- Specified by:
withAddExamplein interfaceParseArgs- Parameters:
aExamples- The application'sExampleelement to be added.- Returns:
- This builder as of the builder pattern.
-
withAddExample
Builder method adding an application'sExampleelement.- Specified by:
withAddExamplein interfaceArgsProcessorBuilder<ParseArgs>- Specified by:
withAddExamplein interfaceParseArgs- Parameters:
aDescription- The example's description.aOperands- The command line arguments required by the example.- Returns:
- This builder as of the builder pattern.
-
withArgsSyntax
- Specified by:
withArgsSyntaxin interfaceArgsSyntaxAccessor.ArgsSyntaxBuilder<ParseArgs>- Parameters:
aArgsSyntax- The (root)Termto be stored by the (root)Termproperty.- Returns:
- The builder for applying multiple build operations.
-
withArgumentEscapeCode
Sets the argument Escape-Code for the argument Escape-Code property.- Specified by:
withArgumentEscapeCodein interfaceArgumentEscapeCodeAccessor.ArgumentEscapeCodeBuilder<ParseArgs>- Specified by:
withArgumentEscapeCodein interfaceParseArgs- Parameters:
aParamEscCode- The argument Escape-Code to be stored by the argument Escape-Code property.- Returns:
- The builder for applying multiple build operations.
-
withBannerBorderEscapeCode
Sets the banner border Escape-Code for the banner border Escape-Code property.- Specified by:
withBannerBorderEscapeCodein interfaceBannerBorderEscapeCodeAccessor.BannerBorderEscapeCodeBuilder<ParseArgs>- Specified by:
withBannerBorderEscapeCodein interfaceParseArgs- 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.
-
withBannerEscapeCode
Sets the banner Escape-Code for the banner Escape-Code property.- Specified by:
withBannerEscapeCodein interfaceBannerEscapeCodeAccessor.BannerEscapeCodeBuilder<ParseArgs>- Specified by:
withBannerEscapeCodein interfaceParseArgs- Parameters:
aBannerEscCode- The banner Escape-Code to be stored by the banner Escape-Code property.- Returns:
- The builder for applying multiple build operations.
-
withBannerFont
Sets the bannerFontfor the bannerFontproperty.- Specified by:
withBannerFontin interfaceBannerFontAccessor.BannerFontBuilder<ParseArgs>- Specified by:
withBannerFontin interfaceParseArgs- Parameters:
aBannerFont- The bannerFontto be stored by the bannerFontproperty.- Returns:
- The builder for applying multiple build operations.
-
withBannerFontPalette
Sets the banner font palette for the banner font palette property.- Specified by:
withBannerFontPalettein interfaceBannerFontPaletteAccessor.BannerFontPaletteBuilder<ParseArgs>- Parameters:
aBannerFontPalette- The banner font palette to be stored by the banner palette property.- Returns:
- The builder for applying multiple build operations.
-
withBannerFontPalette
Sets the banner font palette for the banner font palette property.- Specified by:
withBannerFontPalettein interfaceBannerFontPaletteAccessor.BannerFontPaletteBuilder<ParseArgs>- Specified by:
withBannerFontPalettein interfaceParseArgs- Parameters:
aColorPalette- The banner font palette to be stored by the banner palette property.- Returns:
- The builder for applying multiple build operations.
-
withCommandEscapeCode
Sets the command Escape-Code for the command Escape-Code property.- Specified by:
withCommandEscapeCodein interfaceCommandEscapeCodeAccessor.CommandEscapeCodeBuilder<ParseArgs>- Specified by:
withCommandEscapeCodein interfaceParseArgs- Parameters:
aCommandEscCode- The command Escape-Code to be stored by the command Escape-Code property.- Returns:
- The builder for applying multiple build operations.
-
withConsoleWidth
- Specified by:
withConsoleWidthin interfaceorg.refcodes.mixin.ConsoleWidthAccessor.ConsoleWidthBuilder<ParseArgs>- Specified by:
withConsoleWidthin interfaceParseArgs
-
withCopyright
Sets the copyright for the copyright property.- Specified by:
withCopyrightin interfaceCopyrightAccessor.CopyrightBuilder<ParseArgs>- Specified by:
withCopyrightin interfaceParseArgs- Parameters:
aCopyright- The copyright to be stored by the console width property.- Returns:
- The builder for applying multiple build operations.
-
withDescription
- Specified by:
withDescriptionin interfaceorg.refcodes.mixin.DescriptionAccessor.DescriptionBuilder<ParseArgs>- Specified by:
withDescriptionin interfaceParseArgs
-
withDescriptionEscapeCode
Sets the description Escape-Code for the description Escape-Code property.- Specified by:
withDescriptionEscapeCodein interfaceDescriptionEscapeCodeAccessor.DescriptionEscapeCodeBuilder<ParseArgs>- Specified by:
withDescriptionEscapeCodein interfaceParseArgs- Parameters:
aDescriptionEscCode- The description Escape-Code to be stored by the description Escape-Code property.- Returns:
- The builder for applying multiple build operations.
-
withErrorOut
Set the error outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).- Specified by:
withErrorOutin interfaceArgsProcessorBuilder<ParseArgs>- Specified by:
withErrorOutin interfaceParseArgs- Parameters:
aErrorOut- The error outPrintStreamto set.- Returns:
- This instance with regard to the builder pattern.
-
withEscapeCodesEnabled
- Specified by:
withEscapeCodesEnabledin interfaceorg.refcodes.mixin.EscapeCodesStatusAccessor.EscapeCodeStatusBuilder<ParseArgs>- Specified by:
withEscapeCodesEnabledin interfaceParseArgs
-
withEvalArgs
Evaluates the provided command line arguments .- Specified by:
withEvalArgsin interfaceArgsParserBuilder<ParseArgs>- Specified by:
withEvalArgsin interfaceParseArgs- Parameters:
aArgs- The command line arguments to be evaluated.- Returns:
- This instance as of the builder pattern to chain further method calls.
- Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
withEvalArgs
public ArgsParser withEvalArgs(List<String> aArgs, ArgsFilter aArgsFilter) throws ArgsSyntaxException Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedArgsFilter.- Specified by:
withEvalArgsin interfaceArgsParserBuilder<ParseArgs>- Parameters:
aArgs- The command line arguments to be evaluated.aArgsFilter- TheArgsFilterused to filter (exclude) any "unwanted" or otherwise evaluated arguments.- Returns:
- This instance as of the builder pattern to chain further method calls.
- Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
withEvalArgs
Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedPattern.- Specified by:
withEvalArgsin interfaceArgsParserBuilder<ParseArgs>- Parameters:
aArgs- The command line arguments to be evaluated.aFilterExp- ThePatternused to filter (exclude) any "unwanted" or otherwise evaluated arguments.- Returns:
- This instance as of the builder pattern to chain further method calls.
- Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
withEvalArgs
Evaluates the provided command line arguments.- Specified by:
withEvalArgsin interfaceArgsParserBuilder<ParseArgs>- Specified by:
withEvalArgsin interfaceParseArgs- Parameters:
aArgs- The command line arguments to be evaluated.- Returns:
- This instance as of the builder pattern to chain further method calls.
- Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
withEvalArgs
Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedArgsFilter.- Specified by:
withEvalArgsin interfaceArgsParserBuilder<ParseArgs>- Parameters:
aArgs- The command line arguments to be evaluated.aArgsFilter- TheArgsFilterused to filter (exclude) any "unwanted" or otherwise evaluated arguments.- Returns:
- This instance as of the builder pattern to chain further method calls.
- Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
withEvalArgs
Evaluates the provided command line arguments, filtering (excluding) the arguments matching the providedPattern.- Specified by:
withEvalArgsin interfaceArgsParserBuilder<ParseArgs>- Parameters:
aArgs- The command line arguments to be evaluated.aFilterExp- ThePatternused to filter (exclude) any "unwanted" or otherwise evaluated arguments.- Returns:
- This instance as of the builder pattern to chain further method calls.
- Throws:
ArgsSyntaxException- thrown in case of a command line arguments mismatch regarding provided and expected args.
-
withExamples
Builder method providing the application'sExampleelements.- Specified by:
withExamplesin interfaceExamplesAccessor.ExamplesBuilder<ParseArgs>- Specified by:
withExamplesin interfaceParseArgs- Parameters:
aExamples- The application'sExampleelements to use.- Returns:
- This builder as of the builder pattern.
-
withExamples
- Specified by:
withExamplesin interfaceExamplesAccessor.ExamplesBuilder<ParseArgs>- Specified by:
withExamplesin interfaceParseArgs- Parameters:
aExamples- TheExampleinstances to be stored.- Returns:
- The builder for applying multiple build operations.
-
withLicense
Sets the license for the license property.- Specified by:
withLicensein interfaceLicenseAccessor.LicenseBuilder<ParseArgs>- Specified by:
withLicensein interfaceParseArgs- Parameters:
aLicense- The license to be stored by the console width property.- Returns:
- The builder for applying multiple build operations.
-
withLineBreak
- Specified by:
withLineBreakin interfaceorg.refcodes.mixin.LineBreakAccessor.LineBreakBuilder<ParseArgs>- Specified by:
withLineBreakin interfaceParseArgs
-
withLineSeparatorEscapeCode
Sets the line separator Escape-Code for the line separator Escape-Code property.- Specified by:
withLineSeparatorEscapeCodein interfaceLineSeparatorEscapeCodeAccessor.LineSeparatorEscapeCodeBuilder<ParseArgs>- Specified by:
withLineSeparatorEscapeCodein interfaceParseArgs- 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.
-
withLongOptionPrefix
Sets the long option prefix for the long option prefix property.- Specified by:
withLongOptionPrefixin interfaceLongOptionPrefixAccessor.LongOptionPrefixBuilder<ParseArgs>- Specified by:
withLongOptionPrefixin interfaceParseArgs- Parameters:
aLongOptionPrefix- The long option prefix to be stored by the long option prefix property.- Returns:
- The builder for applying multiple build operations.
-
withMaxConsoleWidth
- Specified by:
withMaxConsoleWidthin interfaceorg.refcodes.mixin.MaxConsoleWidthAccessor.MaxConsoleWidthBuilder<ParseArgs>- Specified by:
withMaxConsoleWidthin interfaceParseArgs
-
withName
-
withOptionEscapeCode
Sets the option Escape-Code for the option Escape-Code property.- Specified by:
withOptionEscapeCodein interfaceOptionEscapeCodeAccessor.OptionEscapeCodeBuilder<ParseArgs>- Specified by:
withOptionEscapeCodein interfaceParseArgs- Parameters:
aOptEscCode- The option Escape-Code to be stored by the option Escape-Code property.- Returns:
- The builder for applying multiple build operations.
-
withResetEscapeCode
- Specified by:
withResetEscapeCodein interfaceParseArgs- Specified by:
withResetEscapeCodein interfaceorg.refcodes.mixin.ResetEscapeCodeAccessor.ResetEscapeCodeBuilder<ParseArgs>
-
withSeparatorLnChar
Builder method adding an separator line char.- Specified by:
withSeparatorLnCharin interfaceArgsProcessorBuilder<ParseArgs>- Specified by:
withSeparatorLnCharin interfaceParseArgs- Parameters:
aSeparatorLnChar- THe according separator line char to use.- Returns:
- This builder as of the builder pattern.
-
withShortOptionPrefix
Sets the short option prefix for the short option prefix property.- Specified by:
withShortOptionPrefixin interfaceParseArgs- Specified by:
withShortOptionPrefixin interfaceShortOptionPrefixAccessor.ShortOptionPrefixBuilder<ParseArgs>- Parameters:
aShortOptionPrefix- The short option prefix to be stored by the short option prefix property.- Returns:
- The builder for applying multiple build operations.
-
withStandardOut
Set the standard outPrintStreamand make other adjustments with the result (with regards to the Builder-Pattern).- Specified by:
withStandardOutin interfaceArgsProcessorBuilder<ParseArgs>- Specified by:
withStandardOutin interfaceParseArgs- Parameters:
aStandardOut- The standard outPrintStreamto set.- Returns:
- This instance with regard to the builder pattern.
-
withSyntaxMetrics
Sets theSyntaxMetricsfor theSyntaxMetricsproperty.- Specified by:
withSyntaxMetricsin interfaceParseArgs- Specified by:
withSyntaxMetricsin interfaceSyntaxMetricsAccessor.SyntaxMetricsBuilder<ParseArgs>- Parameters:
aSyntaxMetrics- TheSyntaxMetricsto be stored by theSyntaxMetricsproperty.- Returns:
- The builder for applying multiple build operations.
-
withSyntaxMetrics
Sets theSyntaxNotationfor theSyntaxNotationproperty.- Specified by:
withSyntaxMetricsin interfaceSyntaxMetricsAccessor.SyntaxMetricsBuilder<ParseArgs>- Parameters:
aSyntaxNotation- TheSyntaxNotationto be stored by theSyntaxNotationproperty.- Returns:
- The builder for applying multiple build operations.
-
withTextBoxGrid
- Specified by:
withTextBoxGridin interfaceParseArgs- Specified by:
withTextBoxGridin interfaceorg.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<ParseArgs>
-
withTextBoxGrid
- Specified by:
withTextBoxGridin interfaceParseArgs- Specified by:
withTextBoxGridin interfaceorg.refcodes.textual.TextBoxGridAccessor.TextBoxGridBuilder<ParseArgs>
-
withTitle
-
getDelimiter
protected char getDelimiter()The delimiter to be used for colliding command line args when creating non colliding arg's aliases (keys for key/value-pairs). Used when parsing args without any syntax definition.- Returns:
- The according delimiter for solving colliding command line args.
-