bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#50214: 28.0.50; cl-struct changes may affect user packages in the wi


From: Philipp
Subject: bug#50214: 28.0.50; cl-struct changes may affect user packages in the wild
Date: Sat, 4 Sep 2021 19:37:18 +0200


> Am 26.08.2021 um 22:52 schrieb Adam Porter <adam@alphapapa.net>:
> 
> On Thu, Aug 26, 2021 at 2:37 PM Lars Ingebrigtsen <larsi@gnus.org> wrote:
>> 
>> I'm not very familiar with the internals of cl-struct, but if I
>> understand correctly, I think this is...  well...  an internal thing
>> that package writers should expect to change, so they shouldn't rely on
>> things like this.
> 
> Unfortunately, I know of no other way to implement what ts.el does
> without modifying the accessors, which requires accessing the internal
> struct details after it is defined.

I haven't checked the code in detail, but AIUI ts.el tries to initialize 
structure members lazily?  Why not just use a wrapper function for that?

(defun ts-hour (ts)
  (or (ts--hour ts)
      (setf (ts--hour ts) (string-to-number (format-time-string "%H" (ts-unix 
ts)))))

Here ts--hour is the actual accessor, which is private and shouldn't be used 
outside of ts.el.






reply via email to

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