From f4eea76070bbc29a7dc87f79df9afa81c3b054fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9a=20Saviot?= Date: Fri, 7 Sep 2018 11:53:07 +0200 Subject: [PATCH] [poincare] Un-inline TreeByReference::childAtIndex --- poincare/include/poincare/tree_by_reference.h | 2 +- poincare/src/tree_by_reference.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/poincare/include/poincare/tree_by_reference.h b/poincare/include/poincare/tree_by_reference.h index 85eb29f19..925931256 100644 --- a/poincare/include/poincare/tree_by_reference.h +++ b/poincare/include/poincare/tree_by_reference.h @@ -53,7 +53,7 @@ public: int numberOfChildren() const { return node()->numberOfChildren(); } int indexOfChild(TreeByReference t) const { return node()->indexOfChild(t.node()); } TreeByReference parent() const { return (isUninitialized() || node()->parent() == nullptr) ? TreeByReference() : TreeByReference(node()->parent()); } - TreeByReference childAtIndex(int i) const { return TreeByReference(node()->childAtIndex(i)); } + TreeByReference childAtIndex(int i) const; void setParentIdentifier(int id) { node()->setParentIdentifier(id); } void deleteParentIdentifier() { node()->deleteParentIdentifier(); } void deleteParentIdentifierInChildren() { node()->deleteParentIdentifierInChildren(); } diff --git a/poincare/src/tree_by_reference.cpp b/poincare/src/tree_by_reference.cpp index 1fa4cfb37..44e24ba89 100644 --- a/poincare/src/tree_by_reference.cpp +++ b/poincare/src/tree_by_reference.cpp @@ -35,6 +35,8 @@ TreeByReference TreeByReference::clone() const { /* Hierarchy operations */ +TreeByReference TreeByReference::childAtIndex(int i) const { return TreeByReference(node()->childAtIndex(i)); } + void TreeByReference::replaceWithInPlace(TreeByReference t) { assert(!isUninitialized()); TreeByReference p = parent();