Mercurial > repos > public > sbplib
annotate struct2string.m @ 16:f7975c054bc3
Improved progress indication for stepN
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Tue, 22 Sep 2015 14:25:59 +0200 |
parents | 8add0564ad6a |
children | 2b4f1d3e5630 |
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 |