public class KeyValueRule extends Rule
| Constructor and Description |
|---|
KeyValueRule(Rule keyRule,
Rule valueRule) |
| Modifier and Type | Method and Description |
|---|---|
Node |
apply(Node node)
Applies the rule to the node using the following criteria
- if rule does not match returns an ErrorNode and stops processing
- if rule matches, applies rules to children
- if rule contains a NodeFactory, returns the result of it
- else returns node
Only structure rules (
ObjectRule, ArrayRule, KeyValueRule) replace child nodes. |
void |
applyDefault(Node parent) |
KeyValueRule |
defaultValue(DefaultValue defaultValue) |
KeyValueRule |
description(String description) |
String |
getDescription() |
Rule |
getKeyRule() |
List<Suggestion> |
getKeySuggestions(Node node,
RamlParsingContext context) |
List<Suggestion> |
getSuggestions(List<Node> pathToRoot,
RamlParsingContext context)
Returns the list of suggestions after navigating through the path
|
List<Suggestion> |
getSuggestions(Node node,
RamlParsingContext context)
Returns the suggestions of this specific rule
|
Rule |
getValueRule() |
boolean |
isRequired() |
boolean |
matches(Node node)
Check if the current rule matches the specified node
|
boolean |
repeated() |
KeyValueRule |
required() |
KeyValueRule |
then(Class<? extends Node> clazz) |
createNodeUsingFactory, thenpublic KeyValueRule required()
@Nonnull public List<Suggestion> getSuggestions(Node node, RamlParsingContext context)
RulegetSuggestions in class Rulenode - The nodecontext - The parse context@Nonnull public List<Suggestion> getKeySuggestions(Node node, RamlParsingContext context)
public List<Suggestion> getSuggestions(List<Node> pathToRoot, RamlParsingContext context)
RulegetSuggestions in class RulepathToRoot - The path of nodes to get of the node from where we want the suggestionscontext - The parse contextpublic KeyValueRule description(String description)
public boolean matches(@Nonnull Node node)
Rulepublic boolean repeated()
public Rule getKeyRule()
public Rule getValueRule()
public KeyValueRule then(Class<? extends Node> clazz)
public Node apply(@Nonnull Node node)
RuleObjectRule, ArrayRule, KeyValueRule) replace child nodes.public String getDescription()
getDescription in class Rulepublic boolean isRequired()
@Nonnull public KeyValueRule defaultValue(DefaultValue defaultValue)
public void applyDefault(Node parent)
Copyright © 2016. All rights reserved.