module Mongo::Error::Labelable

A module encapsulating functionality to manage labels added to errors.

@note Although methods of this module are part of the public API,

the fact that these methods are defined on this module and not on
the classes which include this module is not part of the public API.

@api semipublic

Public Instance Methods

add_label(label) click to toggle source

Adds the specified label to the error instance, if the label is not already in the set of labels.

@param [ String ] label The label to add.

@api private

# File lib/mongo/error/labelable.rb, line 65
def add_label(label)
  @labels ||= []
  @labels << label unless label?(label)
end
label?(label) click to toggle source

Does the error have the given label?

@example

error.label?(label)

@param [ String ] label The label to check if the error has.

@return [ true, false ] Whether the error has the given label.

@since 2.6.0

# File lib/mongo/error/labelable.rb, line 39
def label?(label)
  @labels && @labels.include?(label)
end
labels() click to toggle source

Gets the set of labels associated with the error.

@example

error.labels

@return [ Array ] The set of labels.

@since 2.7.0

# File lib/mongo/error/labelable.rb, line 51
def labels
  if @labels
    @labels.dup
  else
    []
  end
end