emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: master af0ea35ea0: Tweak how functions are formatted in Implementati


From: Stefan Monnier
Subject: Re: master af0ea35ea0: Tweak how functions are formatted in Implementation in *Help*
Date: Sat, 02 Apr 2022 10:26:06 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux)

>> If so, we should be careful to only apply it to the argnames but not to
>> the specializers since these are case sensitive.
> Yup.  But, yes, I think it would make sense to upcase/italicize the
> argnames, because that would clarify what we're talking about here
> (which isn't at all obvious).  Patches welcome.

Agreed.

>> The above patch also leads to odd results for methods with qualifiers.
>> E.g. `C-h o cl-generic-generalizers RET` shows things like:
>>
>>     :extra "cl-struct" (cl-generic-generalizers type) in ‘cl-generic.el’.
>>
>>     Undocumented
>>
>> which I find rather confusing.
>
> I've now made those things display as before, but I think it's not quite
> clear what that part is trying to express, so some clarification here
> would be nice.

The new behavior is weird/confusing.  I get (with manual
capitalization, while we wait for an actual patch):

    [...]

    (cl-generic-generalizers (SPECIALIZER (head derived-mode))) in 
‘cl-generic.el’.

    Support for (derived-mode MODE) specializers.
    Used internally for the (major-mode MODE) context specializers.

    :extra "typeof" (TYPE) in ‘cl-generic.el’.

    [...]

The presence/absence of `cl-generic-generalizers` looks rather
accidental/unexplained (IOW looks like a bug to me :-)

For reference, these correspond to:

    (cl-defmethod cl-generic-generalizers ((specializer (head derived-mode))))

and

    (cl-defmethod cl-generic-generalizers :extra "typeof" (type)

in the source code.


        Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]