}
@FunctionalInterface
- private interface WriterMethod<T extends PathArgument> {
+ interface WriterMethod<T extends PathArgument> {
void apply(ReusableImmutableNormalizedNodeStreamWriter writer, T name) throws IOException;
}
@FunctionalInterface
- private interface SizedWriterMethod<T extends PathArgument> {
+ interface SizedWriterMethod<T extends PathArgument> {
void apply(ReusableImmutableNormalizedNodeStreamWriter writer, T name, int childSizeHint) throws IOException;
}
public void scalarValue(final Object value) throws IOException {
checkNotSealed();
if (unknown == 0) {
- delegate.scalarValue(translateScalar(stack.peek(), value));
+ delegate.scalarValue(translateScalar(currentSchema(), value));
}
}
}
final DataSchemaContextNode<?> schema;
- final DataSchemaContextNode<?> parent = stack.peek();
+ final DataSchemaContextNode<?> parent = currentSchema();
if (parent != null) {
schema = parent.getChild(name);
} else {
return true;
}
- private <A extends PathArgument> void enter(final WriterMethod<A> method, final A name) throws IOException {
+ final <A extends PathArgument> void enter(final WriterMethod<A> method, final A name) throws IOException {
if (enter(name)) {
method.apply(delegate, name);
}
}
- private <A extends PathArgument> void enter(final SizedWriterMethod<A> method, final A name, final int size)
+ final <A extends PathArgument> void enter(final SizedWriterMethod<A> method, final A name, final int size)
throws IOException {
if (enter(name)) {
method.apply(delegate, name, size);
}
}
+
+ final DataSchemaContextNode<?> currentSchema() {
+ return stack.peek();
+ }
}