1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-10 22:10:21 +02:00

Deprecate object-properties in the main environment

They should be deprecated entirely except that they are used for object
documentation.  Some other day.

* libguile/objprop.c:
* libguile/objprop.h: Remove.
* libguile/deprecated.h:
* libguile/deprecated.c (scm_object_properties):
(scm_set_object_properties_x):
(scm_object_property):
(scm_set_object_property_x): Add deprecation shims.
* module/ice-9/deprecated.scm (object-properties*):
(set-object-properties!*):
(object-property*):
(set-object-property!*): Add deprecation shims.
* libguile/init.c:
* libguile.h: Remove objprops.
* module/ice-9/object-properties.scm: Add pure Scheme implementation
here.
* module/ice-9/documentation.scm:
* module/scripts/api-diff.scm:
* module/scripts/read-text-outline.scm:
* module/scripts/scan-api.scm:
* module/scripts/summarize-guile-TODO.scm:
* module/srfi/srfi-64.scm: Include object-properties module.
This commit is contained in:
Andy Wingo 2025-05-09 13:49:17 +02:00
parent bdadd4b057
commit be6a5c6c75
15 changed files with 139 additions and 170 deletions

View file

@ -1,6 +1,6 @@
;;; api-diff --- diff guile-api.alist files
;; Copyright (C) 2002, 2006, 2011 Free Software Foundation, Inc.
;; Copyright (C) 2002, 2006, 2011, 2025 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU Lesser General Public License
@ -40,11 +40,12 @@
;;; Code:
(define-module (scripts api-diff)
:use-module (ice-9 common-list)
:use-module (ice-9 format)
:use-module (ice-9 getopt-long)
:autoload (srfi srfi-13) (string-tokenize)
:export (api-diff))
#:use-module (ice-9 common-list)
#:use-module (ice-9 format)
#:use-module (ice-9 getopt-long)
#:use-module (ice-9 object-properties)
#:autoload (srfi srfi-13) (string-tokenize)
#:export (api-diff))
(define %include-in-guild-list #f)
(define %summary "Show differences between two scan-api files.")
@ -54,7 +55,7 @@
(lambda () (read))))
(define put set-object-property!)
(define get object-property)
(define get yobject-property)
(define (read-api-alist-file file)
(let* ((alist (read-alist-file file))

View file

@ -1,6 +1,6 @@
;;; read-text-outline --- Read a text outline and display it as a sexp
;; Copyright (C) 2002, 2006, 2011 Free Software Foundation, Inc.
;; Copyright (C) 2002, 2006, 2011, 2025 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU Lesser General Public License
@ -115,6 +115,7 @@
read-text-outline-silently
make-text-outline-reader)
:use-module (ice-9 regex)
:use-module (ice-9 object-properties)
:autoload (ice-9 rdelim) (read-line)
:autoload (ice-9 getopt-long) (getopt-long))

View file

@ -1,6 +1,6 @@
;;; scan-api --- Scan and group interpreter and libguile interface elements
;; Copyright (C) 2002, 2006, 2011 Free Software Foundation, Inc.
;; Copyright (C) 2002, 2006, 2011, 2025 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU Lesser General Public License
@ -60,10 +60,11 @@
;;; Code:
(define-module (scripts scan-api)
:use-module (ice-9 popen)
:use-module (ice-9 rdelim)
:use-module (ice-9 regex)
:export (scan-api))
#:use-module (ice-9 object-properties)
#:use-module (ice-9 popen)
#:use-module (ice-9 rdelim)
#:use-module (ice-9 regex)
#:export (scan-api))
(define %include-in-guild-list #f)
(define %summary "Generate an API description for a Guile extension.")

View file

@ -1,6 +1,6 @@
;;; summarize-guile-TODO --- Display Guile TODO list in various ways
;; Copyright (C) 2002, 2006, 2010, 2011 Free Software Foundation, Inc.
;; Copyright (C) 2002, 2006, 2010, 2011, 2025 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU Lesser General Public License
@ -66,12 +66,13 @@
(debug-enable 'backtrace)
(define-module (scripts summarize-guile-TODO)
:use-module (scripts read-text-outline)
:use-module (ice-9 getopt-long)
:autoload (srfi srfi-13) (string-tokenize) ; string library
:autoload (srfi srfi-14) (char-set) ; string library
:autoload (ice-9 common-list) (remove-if-not)
:export (summarize-guile-TODO))
#:use-module (scripts read-text-outline)
#:use-module (ice-9 getopt-long)
#:use-module (ice-9 object-properties)
#:autoload (srfi srfi-13) (string-tokenize) ; string library
#:autoload (srfi srfi-14) (char-set) ; string library
#:autoload (ice-9 common-list) (remove-if-not)
#:export (summarize-guile-TODO))
(define %include-in-guild-list #f)
(define %summary "A quaint relic of the past.")