Package org.jline.utils
Class StyleResolver
- java.lang.Object
-
- org.jline.utils.StyleResolver
-
- Direct Known Subclasses:
StyleResolver
public class StyleResolver extends java.lang.Object
Resolves named (or source-referenced)AttributedStyle
.- Since:
- 3.6
-
-
Constructor Summary
Constructors Constructor Description StyleResolver(java.util.function.Function<java.lang.String,java.lang.String> source)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private AttributedStyle
apply(AttributedStyle style, java.lang.String spec)
Apply style specification.private AttributedStyle
applyAnsi(AttributedStyle style, java.lang.String spec)
private AttributedStyle
applyColor(AttributedStyle style, java.lang.String spec)
Apply color styles specification.private AttributedStyle
applyNamed(AttributedStyle style, java.lang.String name)
Apply default named styles.private AttributedStyle
applyReference(AttributedStyle style, java.lang.String spec)
Apply source-referenced named style.private static java.lang.Integer
color(java.lang.String name)
Returns the color identifier for the given name.private static java.lang.Integer
colorRgb(java.lang.String name)
Returns the RGB color for the given name.AttributedStyle
resolve(java.lang.String spec)
Resolve the given style specification.AttributedStyle
resolve(java.lang.String spec, java.lang.String defaultSpec)
Resolve the given style specification.
-
-
-
Method Detail
-
colorRgb
private static java.lang.Integer colorRgb(java.lang.String name)
Returns the RGB color for the given name.Bright color can be specified with:
!<color>
orbright-<color>
.Full xterm256 color can be specified with:
~<color>
. RGB colors can be specified with:x<rgb>
or#<rgb>
wherergb
is a 24 bits hexadecimal color.- Parameters:
name
- the name of the color- Returns:
- color code, or
null
if unable to determine.
-
color
private static java.lang.Integer color(java.lang.String name)
Returns the color identifier for the given name.Bright color can be specified with:
!<color>
orbright-<color>
.Full xterm256 color can be specified with:
~<color>
.- Parameters:
name
- the name of the color- Returns:
- color code, or
null
if unable to determine.
-
resolve
public AttributedStyle resolve(java.lang.String spec)
Resolve the given style specification.If for some reason the specification is invalid, then
AttributedStyle.DEFAULT
will be used.- Parameters:
spec
- the specification- Returns:
- the style
-
resolve
public AttributedStyle resolve(java.lang.String spec, java.lang.String defaultSpec)
Resolve the given style specification.If this resolves to
AttributedStyle.DEFAULT
then given default specification is used if non-null.- Parameters:
spec
- the specificationdefaultSpec
- the default specifiaction- Returns:
- the style
-
apply
private AttributedStyle apply(AttributedStyle style, java.lang.String spec)
Apply style specification.- Parameters:
style
- the style to apply tospec
- the specification- Returns:
- the new style
-
applyAnsi
private AttributedStyle applyAnsi(AttributedStyle style, java.lang.String spec)
-
applyReference
private AttributedStyle applyReference(AttributedStyle style, java.lang.String spec)
Apply source-referenced named style.- Parameters:
style
- the style to apply tospec
- the specification- Returns:
- the new style
-
applyNamed
private AttributedStyle applyNamed(AttributedStyle style, java.lang.String name)
Apply default named styles.- Parameters:
style
- the style to apply toname
- the named style- Returns:
- the new style
-
applyColor
private AttributedStyle applyColor(AttributedStyle style, java.lang.String spec)
Apply color styles specification.- Parameters:
style
- The style to apply tospec
- Color specification:<color-mode>:<color-name>
- Returns:
- The new style
-
-