Mercurial > hg > octave-nkf
diff libinterp/octave-value/ov-base.h @ 19295:56bc1464ec59
Implement "isa" for classdef objects.
* ov.h (octave_value::is_instance_of): New method.
* ov-base.h (octave_base_value::is_instance_of): Likewise.
* ov-class.h (octave_class::is_instance_of): New method declaration.
* ov-class.cc (octave_class::is_instance_of): Implement it with
find_parent_class.
* ov-classdef.h (octave_classdef::is_instance_of): New method
declaration.
* ov-classdef.cc (octave_classdef::is_instance_of): Implement it
with lookup_class and is_superclass.
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Sat, 20 Sep 2014 12:43:25 -0400 |
parents | bcd71a2531d3 |
children | fa48651fbb8a |
line wrap: on
line diff
--- a/libinterp/octave-value/ov-base.h +++ b/libinterp/octave-value/ov-base.h @@ -583,6 +583,9 @@ virtual octave_base_value *unique_parent_class (const std::string&) { return 0; } + virtual bool is_instance_of (const std::string&) const + { return false; } + virtual octave_function *function_value (bool silent = false); virtual octave_user_function *user_function_value (bool silent = false);