module Origin::Mergeable

Contains behaviour for merging existing selection with new selection.

Attributes

strategy[RW]

@attribute [rw] strategy The name of the current strategy.

Public Instance Methods

intersect() click to toggle source

Instruct the next mergeable call to use intersection.

@example Use intersection on the next call.

mergeable.intersect.in(field: [ 1, 2, 3 ])

@return [ Mergeable ] The intersect flagged mergeable.

@since 1.0.0

# File lib/origin/mergeable.rb, line 17
def intersect
  use(:__intersect__)
end
override() click to toggle source

Instruct the next mergeable call to use override.

@example Use override on the next call.

mergeable.override.in(field: [ 1, 2, 3 ])

@return [ Mergeable ] The override flagged mergeable.

@since 1.0.0

# File lib/origin/mergeable.rb, line 29
def override
  use(:__override__)
end
reset_strategies!() click to toggle source

Reset the stratgies to nil, used after cloning.

@example Reset the strategies.

mergeable.reset_strategies!

@return [ nil ] nil.

@since 1.0.0

# File lib/origin/mergeable.rb, line 53
def reset_strategies!
  self.strategy, self.negating = nil, nil
end
union() click to toggle source

Instruct the next mergeable call to use union.

@example Use union on the next call.

mergeable.union.in(field: [ 1, 2, 3 ])

@return [ Mergeable ] The union flagged mergeable.

@since 1.0.0

# File lib/origin/mergeable.rb, line 41
def union
  use(:__union__)
end