class RBI::Tree

def create_class(name, superclass_name: nil, &block)

: (String name, ?superclass_name: String?) ?{ (RBI::Scope scope) -> void } -> Scope
def create_class(name, superclass_name: nil, &block)
  T.cast(create_node(RBI::Class.new(name, superclass_name: superclass_name)), RBI::Scope).tap do |node|
    block&.call(node)
  end
end