annotate struct2string.m @ 27:97a638f91fb8

Added function spdiag(). Fixed a bunch of bugs in the Wave2dCurve scheme.
author Jonatan Werpers <jonatan@werpers.com>
date Sun, 27 Sep 2015 22:15:37 +0200
parents 8add0564ad6a
children 2b4f1d3e5630
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 function str = struct2string(s)
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 fn = fieldnames(s);
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 if length(fn) == 0
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 str = '{}';
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 return
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7 end
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 str = sprintf('{');
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 for i = 1:length(fn) - 1
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 value = s.(fn{i});
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 str = [str sprintf('%s: %s, ',fn{i}, valueString(value))];
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 end
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
15 value = s.(fn{end});
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
16 str = [str sprintf('%s: %s}',fn{end}, valueString(value))];
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
17 end
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
18
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
19 function str = valueString(value)
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
20 if ischar(value)
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
21 str = ['''' value ''''];
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
22 else
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
23 str = num2str(value);
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
24 end
8add0564ad6a Added functions for converting structs to string representations.
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
25 end