# File lib/parser/builders/default.rb, line 579
    def def_singleton(def_t, definee, dot_t,
                      name_t, args,
                      body, end_t)
      case definee.type
      when :int, :str, :dstr, :sym, :dsym,
           :regexp, :array, :hash

        diagnostic :error, :singleton_literal, nil, definee.loc.expression

      else
        n(:defs, [ definee, value(name_t).to_sym, args, body ],
          definition_map(def_t, dot_t, name_t, end_t))
      end
    end