class YARDSorbet::Handlers::EnumsHandler

Handle `enums` calls, registering enum values as constants

Public Instance Methods

process() click to toggle source
# File lib/yard-sorbet/handlers/enums_handler.rb, line 14
def process
  statement.traverse do |node|
    if const_assign_node?(node)
      register YARD::CodeObjects::ConstantObject.new(namespace, node.first.source) do |obj|
        obj.docstring = node.docstring
        obj.source = node
        obj.value = node.last.source
      end
    end
  end
end

Private Instance Methods

const_assign_node?(node) click to toggle source
# File lib/yard-sorbet/handlers/enums_handler.rb, line 29
def const_assign_node?(node)
  node.type == :assign && node[0][0].type == :const
end