Function: erc--handle-channel-mode

erc--handle-channel-mode is a byte-compiled function defined in erc.el.gz.

Signature

(erc--handle-channel-mode TYPE LETTER STATE ARG)

Documentation

Handle a STATE change for mode LETTER of TYPE with ARG.

Expect to be called in the affected target buffer. Expect TYPE to be a character, like ?a, representing an advertised
"CHANMODES" group. Expect LETTER to also be a character, and
expect STATE to be a boolean and ARGUMENT either a string or nil.

Implementations

(erc--handle-channel-mode _ (_ (eql 107)) STATE ARG) in `erc.el'.

Update channel key, remembering ARG when state is non-nil.

(erc--handle-channel-mode _ (_ (eql 108)) STATE ARG) in `erc.el'.

Update channel user limit, remembering ARG when STATE is non-nil.

(erc--handle-channel-mode _ (_ (eql 98)) STATE ARG) in `erc.el'.

Update `erc-channel-banlist' when synchronized.

:before (erc--handle-channel-mode (_ (eql 100)) C STATE _) in `erc.el'.

Update `erc-channel-modes' for any character C of nullary type D. Remember when STATE is non-nil and forget otherwise.

:before (erc--handle-channel-mode TYPE C STATE ARG) in `erc.el'.

Record STATE change for mode letter C. When STATE is non-nil, add or update C's mapping in `erc--channel-modes', associating it with ARG if C takes a parameter and t otherwise. When STATE is nil, forget the mapping. For type A, add up update a permanent mapping for C, associating it with an integer indicating a running total of STATE changes since joining the channel. In most cases, this won't match the number known to the server.

(erc--handle-channel-mode TYPE LETTER STATE ARG) in `erc.el'.

Undocumented

Source Code

;; Defined in /usr/src/emacs/lisp/erc/erc.el.gz
(cl-defgeneric erc--handle-channel-mode (type letter state arg)
  "Handle a STATE change for mode LETTER of TYPE with ARG.
Expect to be called in the affected target buffer.  Expect TYPE
to be a character, like ?a, representing an advertised
\"CHANMODES\" group.  Expect LETTER to also be a character, and
expect STATE to be a boolean and ARGUMENT either a string or nil."
  (erc-log (format "Channel-mode %c (type %s, arg %S) %s"
                   letter type arg (if state 'enabled 'disabled))))