Class: Hashira::Duplication::Literal

Inherits:
Object
  • Object
show all
Defined in:
lib/hashira/duplication/literal.rb

Constant Summary collapse

TYPES =
[
  Prism::ArrayNode, Prism::AssocNode, Prism::FalseNode, Prism::FloatNode,
  Prism::HashNode, Prism::IntegerNode, Prism::KeywordHashNode, Prism::NilNode,
  Prism::StringNode, Prism::SymbolNode, Prism::TrueNode
].freeze

Instance Method Summary collapse

Constructor Details

#initialize(node) ⇒ Literal

Returns a new instance of Literal.



12
13
14
# File 'lib/hashira/duplication/literal.rb', line 12

def initialize(node)
  @node = node
end

Instance Method Details

#literal?Boolean

Returns:

  • (Boolean)


16
# File 'lib/hashira/duplication/literal.rb', line 16

def literal? = TYPES.include?(@node.class) && parts.all?(&:literal?)

#literals?Boolean

Returns:

  • (Boolean)


18
# File 'lib/hashira/duplication/literal.rb', line 18

def literals? = parts.all?(&:literal?)