Class LinearTypeOrderBuilderImpl.TotalTypeOrder

    • Field Detail

      • order

        private final int[] order
      • typeCodeToOrder

        private final short[] typeCodeToOrder
      • hashCodeComputed

        private boolean hashCodeComputed
      • computedHashCode

        private int computedHashCode
      • isEmptyTypeOrder

        private final boolean isEmptyTypeOrder
    • Constructor Detail

      • TotalTypeOrder

        private TotalTypeOrder​(int[] typeList,
                               TypeSystem ts,
                               boolean isEmpty)
        The constructor for the total type order, called by the other constructor and also when doing a cas complete deserialization, or just deserializing the type system/index defs Create the order from an array of type codes in ascending order.
        Parameters:
        typeList - the list of ordered types
        ts - the type system
    • Method Detail

      • compare

        public int compare​(FeatureStructure fs1,
                           FeatureStructure fs2)
        Description copied from interface: LinearTypeOrder
        Compare two Feature Structure's types
        Specified by:
        compare in interface LinearTypeOrder
        Parameters:
        fs1 - first Feature Structure
        fs2 - second Feature Structure
        Returns:
        same as compare functions: -1 if fs1's type < fs2's type, etc.
      • lessThan

        public boolean lessThan​(Type t1,
                                Type t2)
        Description copied from interface: LinearTypeOrder
        Compare two types.
        Specified by:
        lessThan in interface LinearTypeOrder
        Parameters:
        t1 - type to compare
        t2 - type to compare
        Returns:
        true iff t1 is less than t2 in this order.
      • lessThan

        public boolean lessThan​(int t1,
                                int t2)
        Description copied from interface: LinearTypeOrder
        Compare two types.
        Specified by:
        lessThan in interface LinearTypeOrder
        Parameters:
        t1 - type to compare
        t2 - type to compare
        Returns:
        true iff t1 is less than t2 in this order.
      • getOrder

        public int[] getOrder()
        Specified by:
        getOrder in interface LinearTypeOrder
        Returns:
        The type order as array of type codes in ascending order.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • isEmptyTypeOrder

        public boolean isEmptyTypeOrder()
        Specified by:
        isEmptyTypeOrder in interface LinearTypeOrder
        Returns:
        true if there is no type order defined for this pipeline