public KeyValue adapt(KeyValueContext context) {
KeyContext keyContext = getChild(context, KeyContext.class);
if (keyContext != null) {
KeyValue keyValue = createNode(context);
keyValue.setKey(getAdapter(KeyAdapter.class).adapt(keyContext));
ValueContext valueContext = getChild(context, ValueContext.class);
if (valueContext == null) {
Value value = createNode(context, Value.class);
int endLine = context.getStop().getLine();
int endColumn =
context.getStop().getCharPositionInLine() + context.getStop().getText().length() - 1;