Mercurial > octave-nkf
annotate test/classdef/foo_static_method_constant_property.m @ 20595:c1a6c31ac29a
eliminate more simple uses of error_state
* ov-classdef.cc: Eliminate simple uses of error_state.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Tue, 06 Oct 2015 00:20:02 -0400 |
parents | a3d7b927ce47 |
children |
rev | line source |
---|---|
15962
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
1 classdef foo_static_method_constant_property |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
2 properties |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
3 frequency; |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
4 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
5 properties (Constant = true) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
6 pie = pi; |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
7 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
8 methods |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
9 function obj = foo_static_method_constant_property (f) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
10 if (nargin == 1) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
11 obj.frequency = f; |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
12 elseif (nargin ~= 0) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
13 error ('foo_static_method_constant_property:SyntaxError', ... |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
14 'foo_static_method_constant_property: Invalid syntax') |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
15 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
16 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
17 function res = cosine (obj, t) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
18 res = cos (obj.radians_per_cycle () * obj.frequency * t); |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
19 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
20 function res = sine (obj, t) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
21 res = sin (obj.radians_per_cycle () * obj.frequency * t); |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
22 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
23 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
24 methods (Static) |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
25 function res = radians_per_cycle () |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
26 res = 2 * foo_static_method_constant_property.pie; |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
27 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
28 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
29 end |
a3d7b927ce47
Add classdef tests for static methods and constant properties.
Ben Abbott <bpabbott@mac.com>
parents:
diff
changeset
|
30 |