Mercurial > octave
changeset 30504:cd5836f814b8
maint: merge stable to default.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Fri, 17 Dec 2021 19:41:48 +0100 |
parents | 6e8a4dacc014 (current diff) 838e73617671 (diff) |
children | 07ac55628691 |
files | libinterp/octave-value/cdef-class.h libinterp/octave-value/cdef-object.h libinterp/octave-value/cdef-package.h |
diffstat | 9 files changed, 60 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/libinterp/octave-value/cdef-class.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-class.h Fri Dec 17 19:41:48 2021 +0100 @@ -34,6 +34,7 @@ #include "oct-refcount.h" +#include "cdef-fwd.h" #include "cdef-method.h" #include "cdef-object.h" #include "cdef-package.h" @@ -48,6 +49,7 @@ class tree_classdef; class + OCTINTERP_API cdef_class : public cdef_meta_object { private:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libinterp/octave-value/cdef-fwd.h Fri Dec 17 19:41:48 2021 +0100 @@ -0,0 +1,38 @@ +//////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2021 The Octave Project Developers +// +// See the file COPYRIGHT.md in the top-level directory of this +// distribution or <https://octave.org/copyright/>. +// +// This file is part of Octave. +// +// Octave is free software: you can redistribute it and/or modify it +// under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// Octave is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Octave; see the file COPYING. If not, see +// <https://www.gnu.org/licenses/>. +// +//////////////////////////////////////////////////////////////////////// + +#if ! defined (octave_cdef_fwd_h) +#define octave_cdef_fwd_h 1 + +#include "octave-config.h" + +namespace octave +{ + class OCTINTERP_API cdef_class; + class OCTINTERP_API cdef_object; + class OCTINTERP_API cdef_package; +} + +#endif
--- a/libinterp/octave-value/cdef-manager.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-manager.h Fri Dec 17 19:41:48 2021 +0100 @@ -29,6 +29,7 @@ #include "octave-config.h" #include "cdef-class.h" +#include "cdef-fwd.h" #include "cdef-method.h" #include "cdef-package.h" #include "cdef-property.h" @@ -38,7 +39,9 @@ { class interpreter; - class cdef_manager + class + OCTINTERP_API + cdef_manager { public:
--- a/libinterp/octave-value/cdef-method.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-method.h Fri Dec 17 19:41:48 2021 +0100 @@ -40,6 +40,7 @@ namespace octave { class + OCTINTERP_API cdef_method : public cdef_meta_object { friend class cdef_class;
--- a/libinterp/octave-value/cdef-object.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-object.h Fri Dec 17 19:41:48 2021 +0100 @@ -33,6 +33,7 @@ #include "oct-refcount.h" +#include "cdef-fwd.h" #include "error.h" #include "oct-map.h" #include "ov.h" @@ -40,9 +41,6 @@ namespace octave { - class cdef_object; - class cdef_class; - // This is mainly a bootstrap class to declare the expected interface. // The actual base class is cdef_class_base, which is declared after // cdef_object, such that it can contain cdef_object objects. @@ -201,6 +199,7 @@ }; class + OCTINTERP_API cdef_object { public: @@ -352,6 +351,7 @@ }; class + OCTINTERP_API cdef_object_base : public cdef_object_rep { public: @@ -389,6 +389,7 @@ }; class + OCTINTERP_API cdef_object_array : public cdef_object_base { public: @@ -456,6 +457,7 @@ }; class + OCTINTERP_API cdef_object_scalar : public cdef_object_base { public: @@ -542,6 +544,7 @@ }; class + OCTINTERP_API handle_cdef_object : public cdef_object_scalar { public: @@ -577,6 +580,7 @@ }; class + OCTINTERP_API value_cdef_object : public cdef_object_scalar { public: @@ -607,6 +611,7 @@ }; class + OCTINTERP_API cdef_meta_object_rep : public handle_cdef_object { public: @@ -654,6 +659,7 @@ }; class + OCTINTERP_API cdef_meta_object : public cdef_object { public:
--- a/libinterp/octave-value/cdef-package.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-package.h Fri Dec 17 19:41:48 2021 +0100 @@ -34,6 +34,7 @@ #include "oct-refcount.h" +#include "cdef-fwd.h" #include "cdef-object.h" #include "ov.h" @@ -42,6 +43,7 @@ class interpreter; class + OCTINTERP_API cdef_package : public cdef_meta_object { friend class cdef_class;
--- a/libinterp/octave-value/cdef-property.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-property.h Fri Dec 17 19:41:48 2021 +0100 @@ -41,6 +41,7 @@ namespace octave { class + OCTINTERP_API cdef_property : public cdef_meta_object { friend class cdef_class;
--- a/libinterp/octave-value/cdef-utils.h Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/cdef-utils.h Fri Dec 17 19:41:48 2021 +0100 @@ -31,14 +31,13 @@ #include <list> #include <string> +#include "cdef-fwd.h" + class octave_value; class Cell; namespace octave { - class cdef_class; - class cdef_package; - extern OCTINTERP_API std::string get_base_name (const std::string& nm);
--- a/libinterp/octave-value/module.mk Thu Dec 16 23:06:35 2021 +0100 +++ b/libinterp/octave-value/module.mk Fri Dec 17 19:41:48 2021 +0100 @@ -19,6 +19,7 @@ OCTAVE_VALUE_INC = \ %reldir%/cdef-class.h \ + %reldir%/cdef-fwd.h \ %reldir%/cdef-manager.h \ %reldir%/cdef-method.h \ %reldir%/cdef-object.h \