Class BuildtimeSegmentUtilities


  • public class BuildtimeSegmentUtilities
    extends java.lang.Object
    • Constructor Detail

      • BuildtimeSegmentUtilities

        public BuildtimeSegmentUtilities()
    • Method Detail

      • updateSegmentEndNodes

        public static void updateSegmentEndNodes​(PathEndNode endNode)
      • requiresAnEagerSegment

        public static boolean requiresAnEagerSegment​(int nodeTypesInSegment)
      • nextNodePosMask

        public static long nextNodePosMask​(long posMask)
      • canBeDisabled

        public static boolean canBeDisabled​(BetaNode betaNode)
      • isRootNode

        public static boolean isRootNode​(LeftTupleNode node,
                                         TerminalNode ignoreTn)
        Returns whether the node is the root of a segment. Lians are always the root of a segment. node cannot be null. The result should discount any removingRule. That means it gives you the result as if the rule had already been removed from the network.
      • isTipNode

        public static boolean isTipNode​(LeftTupleNode node,
                                        TerminalNode removingTN)
        Returns whether the node is the tip of a segment. EndNodes (rtn and rian) are always the tip of a segment. node cannot be null. The result should discount any removingRule. That means it gives you the result as if the rule had already been removed from the network.
      • sinkNotExclusivelyAssociatedWithTerminal

        public static boolean sinkNotExclusivelyAssociatedWithTerminal​(TerminalNode removingTN,
                                                                       LeftTupleNode sink)
      • updateNodeTypesMask

        public static int updateNodeTypesMask​(org.drools.base.common.NetworkNode node,
                                              int mask)
      • isSet

        public static boolean isSet​(int mask,
                                    int bit)
      • isAssociatedWith

        public static boolean isAssociatedWith​(org.drools.base.common.NetworkNode node,
                                               TerminalNode tn)