refactor(ivy): use hex flags instead of binary for TNodeFlags (#33605)

PR Close #33605
This commit is contained in:
Matias Niemelä 2019-11-01 13:22:07 -07:00 committed by atscott
parent 8e6bed988e
commit 5453c4cd96

View File

@ -45,38 +45,41 @@ export const enum TNodeType {
* Corresponds to the TNode.flags property. * Corresponds to the TNode.flags property.
*/ */
export const enum TNodeFlags { export const enum TNodeFlags {
/** This bit is set if the node is a host for any directive (including a component) */ /** Bit #1 - This bit is set if the node is a host for any directive (including a component) */
isDirectiveHost = 0b000000001, isDirectiveHost = 0x1,
/** /**
* This bit is set if the node is a host for a component. Setting this bit implies that the * Bit #2 - This bit is set if the node is a host for a component.
* isDirectiveHost bit is set as well. */ *
isComponentHost = 0b000000010, * Setting this bit implies that the `isDirectiveHost` bit is set as well.
* */
isComponentHost = 0x2,
/** This bit is set if the node has been projected */ /** Bit #3 - This bit is set if the node has been projected */
isProjected = 0b000000100, isProjected = 0x4,
/** This bit is set if any directive on this node has content queries */ /** Bit #4 - This bit is set if any directive on this node has content queries */
hasContentQuery = 0b000001000, hasContentQuery = 0x8,
/** This bit is set if the node has any "class" inputs */ /** Bit #5 - This bit is set if the node has any "class" inputs */
hasClassInput = 0b000010000, hasClassInput = 0x10,
/** This bit is set if the node has any "style" inputs */ /** Bit #6 - This bit is set if the node has any "style" inputs */
hasStyleInput = 0b000100000, hasStyleInput = 0x20,
/** This bit is set if the node has initial styling */ /** Bit #7 - This bit is set if the node has initial styling */
hasInitialStyling = 0b001000000, hasInitialStyling = 0x40,
/** This bit is set if the node has been detached by i18n */ /** Bit #8 - This bit is set if the node has been detached by i18n */
isDetached = 0b010000000, isDetached = 0x80,
/** /**
* This bit is set if the node has directives with host bindings. This flags allows us to guard * Bit #9 - This bit is set if the node has directives with host bindings.
* host-binding logic and invoke it only on nodes that actually have directives with host *
* bindings. * This flags allows us to guard host-binding logic and invoke it only on nodes
* that actually have directives with host bindings.
*/ */
hasHostBindings = 0b100000000, hasHostBindings = 0x100,
} }
/** /**