com.codecommit.antixml

ZipperMergeStrategy

object ZipperMergeStrategy

Source
ZipperMergeStrategy.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ZipperMergeStrategy
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  4. object AlwaysLocal extends ZipperMergeStrategy

    This strategy unconditionally replaces the "top-level" properties of a node with its direct update but replaces the children of the node with the children of the its indirect update.

    This strategy unconditionally replaces the "top-level" properties of a node with its direct update but replaces the children of the node with the children of the its indirect update.

    Loosely speaking, this strategy causes unselect to only pull back updates to the name, prefix, scope, and attributes of a conflicted element. Updates to the children property of such an element are silently ignored. Instead, the element's children are determined by whatever updates occurred to the descendant nodes in zipper.

    If a node has been multiplied via a flatMap operation or the like, then the strategy will be uniformly applied to all of the resulting nodes. If it has been completely elided, then it will be elided in the result as well.

    See also the RequireLocal strategy, which behaves similarly except that it throws an error if it detects changes to a conflicted element's children property.

    See also

    com.codecommit.antixml.Zipper

  5. object AlwaysPreferChildren extends ZipperMergeStrategy

    This strategy unconditionally replaces the original node with its indirectUpdate.

    This strategy unconditionally replaces the original node with its indirectUpdate. Direct updates are ignored.

    In other words, if a zipper contains both a node and one of its descendants, then updates to the node are unconditionally ignored and the result of the merge will be based solely on its descendants.

    See also

    com.codecommit.antixml.Zipper

  6. object AlwaysPreferParents extends ZipperMergeStrategy

    This strategy unconditionally replaces the original node with its directUpdate.

    This strategy unconditionally replaces the original node with its directUpdate. It is essentially the opposite of AlwaysPreferChildren.

    This strategy is mainly listed for the sake of completeness. In practice, it is preferable to use a selection operator such as \\! which prevents conflicting children from entering the zipper in the first place.

    See also

    com.codecommit.antixml.Zipper

  7. implicit object PreferLatest extends ZipperMergeStrategy

    A strategy that prefers later updates to earlier ones.

    A strategy that prefers later updates to earlier ones.

    The strategy is similar to AlwaysLocal in that the top-level properties of the original node are unconditionally replaced by their direct updates. The difference is in the treatment of the children; They are taken from either the indirect update or the direct update depending on which one was more recent and on whether the children of each update differ from the children of the original node.

    The intent of the strategy is to approximate the notion of preferring the most recent update in case of conflict.

    If a node has been multiplied via a flatMap operation or the like, then the strategy will be uniformly applied to all of the resulting nodes. If it has been completely elided, then it will be elided in the result as well.

    See also

    com.codecommit.antixml.Zipper

  8. object RequireConflictFree extends ZipperMergeStrategy

    A strategy that simply throws an exception if it is ever invoked.

    A strategy that simply throws an exception if it is ever invoked. In other words, the strategy prevents unselection in Zippers that contain conflicts.

    See also

    com.codecommit.antixml.Zipper

  9. object RequireLocal extends ZipperMergeStrategy

    This strategy is similar to AlwaysLocal except that it throws an error if it detects a change to a conflicted element's children property (as opposed to ignoring the change, as AlwaysLocal would).

    This strategy is similar to AlwaysLocal except that it throws an error if it detects a change to a conflicted element's children property (as opposed to ignoring the change, as AlwaysLocal would).

    The price of this added safety check is that the strategy makes a Group equality check and thus is potentially less performant than AlwaysLocal.

    See also

    com.codecommit.antixml.Zipper

  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  17. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  19. final def notify(): Unit

    Definition Classes
    AnyRef
  20. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. def uniformlyApply(f: (ZipperMergeContext, Node, Int) ⇒ Seq[Node]): ZipperMergeStrategy

    Returns a com.codecommit.antixml.ZipperMergeStrategy obtained by uniformly applying the specified function to each directUpdate node in the merge context and concatenating the results.

    Returns a com.codecommit.antixml.ZipperMergeStrategy obtained by uniformly applying the specified function to each directUpdate node in the merge context and concatenating the results. The function takes the merge context, a directUpdate node and its associated update time as arguments and returns a sequence of replacement nodes.

    See also

    com.codecommit.antixml.Zipper

  24. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped