1,847
edits
m (→Lower-priority issues: Update bug #52614.) |
|||
(7 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
=== Features | === Supported Features === | ||
==== Properties ==== | ==== Properties ==== | ||
Line 142: | Line 60: | ||
|} | |} | ||
=== Open Bug Reports for Issues | ==== Methods ==== | ||
Classdef methods are supported but not all attributes are fully implemented. | |||
{| class="wikitable" | |||
|- | |||
! style="text-align:left;"| Attribute | |||
! Support | |||
! Notes | |||
|- | |||
|Abstract | |||
|Partial | |||
|See bug report {{bug|51377}} | |||
|- | |||
|Access | |||
|Yes | |||
| | |||
|- | |||
|Hidden | |||
|Yes | |||
| | |||
|- | |||
|Sealed | |||
|Yes | |||
| | |||
|- | |||
|Static | |||
|Yes | |||
| | |||
|} | |||
=== Features that are not implemented === | |||
==== enumeration ==== | |||
Octave should be able to parse the enumeration section of a classdef definition but nothing is done with it. Progress on this feature is tracked in bug report {{bug|44582}}. | |||
==== events and listeners ==== | |||
Octave should be able to parse the events section of a classdef definition but nothing is done with it. Progress on this feature is tracked in bug report {{bug|56194}}. | |||
=== Open Bug Reports for Other Issues === | |||
Issues with basic classdef functionality | ==== Issues with basic classdef functionality ==== | ||
* [https://savannah.gnu.org/bugs/?51659 51659] Calling 'methods' on self causes syntax error | * [https://savannah.gnu.org/bugs/?51659 51659] Calling 'methods' on self causes syntax error | ||
Line 163: | Line 122: | ||
* [https://savannah.gnu.org/bugs/?55746 55746] interpreter fails to instantiate classdef with classdef properties | * [https://savannah.gnu.org/bugs/?55746 55746] interpreter fails to instantiate classdef with classdef properties | ||
* [https://savannah.gnu.org/bugs/?52582 52582] using static method to initialize property value fails | * [https://savannah.gnu.org/bugs/?52582 52582] using static method to initialize property value fails | ||
* [https://savannah.gnu.org/bugs/?45833 45833] support load/save of classdef objects | |||
Classdef and +package directories | ==== Classdef and +package directories ==== | ||
* [https://savannah.gnu.org/bugs/?54941 54941] interpreter cannot find methods in files of classdefs in packages | * [https://savannah.gnu.org/bugs/?54941 54941] interpreter cannot find methods in files of classdefs in packages | ||
Arrays of classdef objects | ==== Arrays of classdef objects ==== | ||
* [https://savannah.gnu.org/bugs/?44665 44665] error in concatenation of classdef objects | |||
* [https://savannah.gnu.org/bugs/?53906 53906] Cannot make an object array with square brackets | |||
* [https://savannah.gnu.org/bugs/?47755 47755] Access to object arrays | * [https://savannah.gnu.org/bugs/?47755 47755] Access to object arrays | ||
* [https://savannah.gnu.org/bugs/?47241 47241] classdef: assigning property of handle object in object array constructs new object | * [https://savannah.gnu.org/bugs/?47241 47241] classdef: assigning property of handle object in object array constructs new object | ||
Debugger (fixes for these are in progress) | ==== Debugger (fixes for these are in progress) ==== | ||
* [https://savannah.gnu.org/bugs/?46451 46451] unable to set breakpoints within classdef classes | * [https://savannah.gnu.org/bugs/?46451 46451] unable to set breakpoints within classdef classes | ||
* [https://savannah.gnu.org/bugs/?45404 45404] Breakpoints cannot be set in classdef methods or +package function files | * [https://savannah.gnu.org/bugs/?45404 45404] Breakpoints cannot be set in classdef methods or +package function files | ||
Lower-priority issues | ==== Lower-priority issues ==== | ||
* [https://savannah.gnu.org/bugs/?55488 55488] Invalid use of colon char as classdef function's argument when subsref is overwritten | * [https://savannah.gnu.org/bugs/?55488 55488] Invalid use of colon char as classdef function's argument when subsref is overwritten | ||
Line 185: | Line 147: | ||
* [https://savannah.gnu.org/bugs/?53811 53811] cellfun does not find overloaded function with function name argument | * [https://savannah.gnu.org/bugs/?53811 53811] cellfun does not find overloaded function with function name argument | ||
* [https://savannah.gnu.org/bugs/?52989 52989] classdef: missing error messages on multiply defined properties | * [https://savannah.gnu.org/bugs/?52989 52989] classdef: missing error messages on multiply defined properties | ||
* [https://savannah.gnu.org/bugs/?52614 52614] setting properties of classdef object during construction with inheritance | * <strike>[https://savannah.gnu.org/bugs/?52614 52614] setting properties of classdef object during construction with inheritance</strike> | ||
* [https://savannah.gnu.org/bugs/?52582 52582] Dependent constant properties in classdef errors: no such file | * [https://savannah.gnu.org/bugs/?52582 52582] Dependent constant properties in classdef errors: no such file | ||
* [https://savannah.gnu.org/bugs/?52123 52123] Indirect memory leak in cdef_manager::initialize () | * [https://savannah.gnu.org/bugs/?52123 52123] Indirect memory leak in cdef_manager::initialize () | ||
Line 197: | Line 159: | ||
* [https://savannah.gnu.org/bugs/?55755 55755] mxGetProperty does not work with properties marked as Dependent | * [https://savannah.gnu.org/bugs/?55755 55755] mxGetProperty does not work with properties marked as Dependent | ||
* [https://savannah.gnu.org/bugs/?55767 55767] classdef property should not be the same as classdef name (at least for Matlab compatibility) | * [https://savannah.gnu.org/bugs/?55767 55767] classdef property should not be the same as classdef name (at least for Matlab compatibility) | ||
* [https://savannah.gnu.org/bugs/?44035 44035] unable to subclass built-in types | |||
Documentation | ==== Documentation ==== | ||
* [https://savannah.gnu.org/bugs/?50729 50729] Improve OOP documentation | * [https://savannah.gnu.org/bugs/?50729 50729] Improve OOP documentation |