From 40371cbf2d8ade3de39824de1078fc9988d967f4 Mon Sep 17 00:00:00 2001 From: Emil Sjolander Date: Tue, 6 Dec 2016 14:37:54 -0800 Subject: [PATCH] Remove init from api Summary: Both New and Reset already call init internally. No reason to expose this function Reviewed By: gkassabli Differential Revision: D4276177 fbshipit-source-id: c4404d0534f381dfacee0625b2847d38de58e038 --- CSSLayout/Yoga.c | 102 +++++++++++++++++++++++------------------------ CSSLayout/Yoga.h | 1 - 2 files changed, 51 insertions(+), 52 deletions(-) diff --git a/CSSLayout/Yoga.c b/CSSLayout/Yoga.c index 58c43121..32d7e489 100644 --- a/CSSLayout/Yoga.c +++ b/CSSLayout/Yoga.c @@ -185,57 +185,7 @@ static inline float YGComputedEdgeValue(const float edges[YGEdgeCount], return defaultValue; } -int32_t gNodeInstanceCount = 0; - -YGNodeRef YGNodeNew(void) { - const YGNodeRef node = gYGCalloc(1, sizeof(YGNode)); - YG_ASSERT(node, "Could not allocate memory for node"); - gNodeInstanceCount++; - - YGNodeInit(node); - return node; -} - -void YGNodeFree(const YGNodeRef node) { - if (node->parent) { - YGNodeListDelete(node->parent->children, node); - node->parent = NULL; - } - - const uint32_t childCount = YGNodeChildCount(node); - for (uint32_t i = 0; i < childCount; i++) { - const YGNodeRef child = YGNodeGetChild(node, i); - child->parent = NULL; - } - - YGNodeListFree(node->children); - gYGFree(node); - gNodeInstanceCount--; -} - -void YGNodeFreeRecursive(const YGNodeRef root) { - while (YGNodeChildCount(root) > 0) { - const YGNodeRef child = YGNodeGetChild(root, 0); - YGNodeRemoveChild(root, child); - YGNodeFreeRecursive(child); - } - YGNodeFree(root); -} - -void YGNodeReset(const YGNodeRef node) { - YG_ASSERT(YGNodeChildCount(node) == 0, "Cannot reset a node which still has children attached"); - YG_ASSERT(node->parent == NULL, "Cannot reset a node still attached to a parent"); - - YGNodeListFree(node->children); - memset(node, 0, sizeof(YGNode)); - YGNodeInit(node); -} - -int32_t YGNodeGetInstanceCount(void) { - return gNodeInstanceCount; -} - -void YGNodeInit(const YGNodeRef node) { +static void YGNodeInit(const YGNodeRef node) { node->parent = NULL; node->children = NULL; node->hasNewLayout = true; @@ -289,6 +239,56 @@ void YGNodeInit(const YGNodeRef node) { node->layout.cachedLayout.computedHeight = -1; } +int32_t gNodeInstanceCount = 0; + +YGNodeRef YGNodeNew(void) { + const YGNodeRef node = gYGCalloc(1, sizeof(YGNode)); + YG_ASSERT(node, "Could not allocate memory for node"); + gNodeInstanceCount++; + + YGNodeInit(node); + return node; +} + +void YGNodeFree(const YGNodeRef node) { + if (node->parent) { + YGNodeListDelete(node->parent->children, node); + node->parent = NULL; + } + + const uint32_t childCount = YGNodeChildCount(node); + for (uint32_t i = 0; i < childCount; i++) { + const YGNodeRef child = YGNodeGetChild(node, i); + child->parent = NULL; + } + + YGNodeListFree(node->children); + gYGFree(node); + gNodeInstanceCount--; +} + +void YGNodeFreeRecursive(const YGNodeRef root) { + while (YGNodeChildCount(root) > 0) { + const YGNodeRef child = YGNodeGetChild(root, 0); + YGNodeRemoveChild(root, child); + YGNodeFreeRecursive(child); + } + YGNodeFree(root); +} + +void YGNodeReset(const YGNodeRef node) { + YG_ASSERT(YGNodeChildCount(node) == 0, "Cannot reset a node which still has children attached"); + YG_ASSERT(node->parent == NULL, "Cannot reset a node still attached to a parent"); + + YGNodeListFree(node->children); + memset(node, 0, sizeof(YGNode)); + YGNodeInit(node); +} + +int32_t YGNodeGetInstanceCount(void) { + return gNodeInstanceCount; +} + static void YGNodeMarkDirtyInternal(const YGNodeRef node) { if (!node->isDirty) { node->isDirty = true; diff --git a/CSSLayout/Yoga.h b/CSSLayout/Yoga.h index 926a3b94..e41a4cd9 100644 --- a/CSSLayout/Yoga.h +++ b/CSSLayout/Yoga.h @@ -54,7 +54,6 @@ typedef void (*YGFree)(void *ptr); // YGNode WIN_EXPORT YGNodeRef YGNodeNew(void); -WIN_EXPORT void YGNodeInit(const YGNodeRef node); WIN_EXPORT void YGNodeFree(const YGNodeRef node); WIN_EXPORT void YGNodeFreeRecursive(const YGNodeRef node); WIN_EXPORT void YGNodeReset(const YGNodeRef node);