Deprecate scm_basic_make_class
authorAndy Wingo <wingo@pobox.com>
Sun, 4 Jan 2015 18:43:14 +0000 (13:43 -0500)
committerAndy Wingo <wingo@pobox.com>
Fri, 23 Jan 2015 15:16:00 +0000 (16:16 +0100)
* libguile/deprecated.h:
* libguile/deprecated.c (scm_basic_make_class): Deprecate.

* libguile/goops.c:
* libguile/goops.h (scm_make_standard_class): New internal helper.  It's
  a better spelling, as it matches make-standard-class, and is internal
  so as not to cause confusion between boot GOOPS helpers and "real"
  GOOPS interfaces.

libguile/deprecated.c
libguile/deprecated.h
libguile/goops.c
libguile/goops.h

index 8989d30..5f4b5c7 100644 (file)
@@ -2,7 +2,7 @@
    deprecate something, move it here when that is feasible.
 */
 
-/* Copyright (C) 2003, 2004, 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2004, 2006, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -319,6 +319,17 @@ scm_find_method (SCM l)
 }
 #undef FUNC_NAME
 
+SCM
+scm_basic_make_class (SCM meta, SCM name, SCM dsupers, SCM dslots)
+{
+  scm_c_issue_deprecation_warning
+    ("scm_basic_make_class is deprecated.  Use `define-class' in Scheme,"
+     "or use `(make META #:name NAME #:dsupers DSUPERS #:slots DSLOTS)' "
+     "in Scheme.");
+
+  return scm_make_standard_class (meta, name, dsupers, dslots);
+}
+
 
 \f
 
index 122687a..472dda3 100644 (file)
@@ -5,7 +5,7 @@
 #ifndef SCM_DEPRECATED_H
 #define SCM_DEPRECATED_H
 
-/* Copyright (C) 2003,2004, 2005, 2006, 2007, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
+/* Copyright (C) 2003,2004, 2005, 2006, 2007, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -152,6 +152,7 @@ SCM_DEPRECATED void scm_memory_error (const char *subr) SCM_NORETURN;
 
 SCM_DEPRECATED SCM scm_compute_applicable_methods (SCM gf, SCM args, long len, int scm_find_method);
 SCM_DEPRECATED SCM scm_find_method (SCM l);
+SCM_DEPRECATED SCM scm_basic_make_class (SCM c, SCM name, SCM dsupers, SCM dslots);
 
 \f
 
index 9e9a514..f8f6c46 100644 (file)
@@ -516,10 +516,10 @@ prep_hashsets (SCM class)
 /******************************************************************************/
 
 SCM
-scm_basic_make_class (SCM class, SCM name, SCM dsupers, SCM dslots)
+scm_make_standard_class (SCM meta, SCM name, SCM dsupers, SCM dslots)
 {
   return scm_call_4 (scm_variable_ref (var_make_standard_class),
-                     class, name, dsupers, dslots);
+                     meta, name, dsupers, dslots);
 }
 
 /******************************************************************************/
@@ -1594,7 +1594,7 @@ make_class_from_template (char const *template, char const *type_name, SCM super
 
   meta = applicablep ? scm_class_procedure_class : scm_class_class;
 
-  return scm_basic_make_class (meta, name, supers, SCM_EOL);
+  return scm_make_standard_class (meta, name, supers, SCM_EOL);
 }
 
 static SCM
@@ -1614,7 +1614,7 @@ make_class_from_symbol (SCM type_name_sym, SCM supers, int applicablep)
 
   meta = applicablep ? scm_class_procedure_class : scm_class_class;
 
-  return scm_basic_make_class (meta, name, supers, SCM_EOL);
+  return scm_make_standard_class (meta, name, supers, SCM_EOL);
 }
 
 SCM
index a9b9921..59cc4d0 100644 (file)
@@ -235,7 +235,8 @@ SCM_API SCM scm_class_of (SCM obj);
 
 /* Low level functions exported */
 SCM_API SCM scm_make_next_method (SCM methods, SCM args, SCM gf);
-SCM_API SCM scm_basic_make_class (SCM c, SCM name, SCM dsupers, SCM dslots);
+SCM_INTERNAL SCM scm_make_standard_class (SCM meta, SCM name, SCM dsupers,
+                                          SCM dslots);
 
 /* Primitives exported */
 SCM_API SCM scm_sys_allocate_instance (SCM c, SCM initargs);