class RuboCop::AST::PairNode
A node extension for ‘pair` nodes. This will be used in place of a plain node when the builder constructs the AST, making its methods available to all `pair` nodes within RuboCop.
Constants
- COLON
- HASH_ROCKET
- SPACED_COLON
- SPACED_HASH_ROCKET
Public Instance Methods
Checks whether the ‘pair` uses a colon delimiter.
@return [Boolean] whether this ‘pair` uses a colon delimiter
# File lib/rubocop/ast/node/pair_node.rb, line 30 def colon? loc.operator.is?(COLON) end
Returns the delimiter of the ‘pair` as a string. Returns `=>` for a colon delimited `pair` and `:` for a hash rocket delimited `pair`.
@param [Boolean] with_spacing whether to include spacing @return [String] the delimiter of the ‘pair`
# File lib/rubocop/ast/node/pair_node.rb, line 39 def delimiter(*deprecated, with_spacing: deprecated.first) if with_spacing hash_rocket? ? SPACED_HASH_ROCKET : SPACED_COLON else hash_rocket? ? HASH_ROCKET : COLON end end
Checks whether the ‘pair` uses a hash rocket delimiter.
@return [Boolean] whether this ‘pair` uses a hash rocket delimiter
# File lib/rubocop/ast/node/pair_node.rb, line 23 def hash_rocket? loc.operator.is?(HASH_ROCKET) end
Returns the inverse delimiter of the ‘pair` as a string.
@param [Boolean] with_spacing whether to include spacing @return [String] the inverse delimiter of the ‘pair`
# File lib/rubocop/ast/node/pair_node.rb, line 51 def inverse_delimiter(*deprecated, with_spacing: deprecated.first) if with_spacing hash_rocket? ? SPACED_COLON : SPACED_HASH_ROCKET else hash_rocket? ? COLON : HASH_ROCKET end end
Checks whether the ‘pair` uses hash value omission.
@return [Boolean] whether this ‘pair` uses hash value omission
# File lib/rubocop/ast/node/pair_node.rb, line 69 def value_omission? source.end_with?(':') end
Checks whether the value starts on its own line.
@return [Boolean] whether the value in the ‘pair` starts its own line
# File lib/rubocop/ast/node/pair_node.rb, line 62 def value_on_new_line? key.loc.line != value.loc.line end