From d3239ea7b6945d449c0361416ab54fec6f9643e6 Mon Sep 17 00:00:00 2001 From: "Benjamin J. Culkin" Date: Wed, 11 Nov 2020 12:23:54 -0400 Subject: Update? --- src/main/java/bjc/data/Tree.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/main/java/bjc/data/Tree.java') diff --git a/src/main/java/bjc/data/Tree.java b/src/main/java/bjc/data/Tree.java index 9a4caa6..5337af5 100644 --- a/src/main/java/bjc/data/Tree.java +++ b/src/main/java/bjc/data/Tree.java @@ -227,9 +227,6 @@ public class Tree implements ITree { /* * Do a collapse of this tree. - * - * @NOTE Why is this protected? I can't see any good reason someone'd want to - * override it. */ private NewType internalCollapse( @@ -380,6 +377,16 @@ public class Tree implements ITree { return transformer.apply(selectedKid); } + @Override + public ITree getChild(final int childNo) { + if (childNo < 0 || childNo > childCount - 1) { + final String msg = String.format("Child index #%d is invalid", childNo); + + throw new IllegalArgumentException(msg); + } + return children.getByIndex(childNo); + } + @Override public TransformedType transformHead(final Function transformer) { -- cgit v1.2.3