Mercurial > repos > public > sbplib
comparison struct2syntax.m @ 7:8add0564ad6a
Added functions for converting structs to string representations.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Mon, 21 Sep 2015 14:50:51 +0200 |
parents | |
children | 54d3ab296ba0 |
comparison
equal
deleted
inserted
replaced
6:c3c95b7a1a1c | 7:8add0564ad6a |
---|---|
1 function str = struct2syntax(s) | |
2 fn = fieldnames(s); | |
3 | |
4 if length(fn) == 0 | |
5 str = 'struct()'; | |
6 return | |
7 end | |
8 | |
9 str = sprintf('struct('); | |
10 | |
11 for i = 1:length(fn) - 1 | |
12 value = s.(fn{i}); | |
13 str = [str sprintf('''%s'', %s, ',fn{i}, valueString(value))]; | |
14 end | |
15 value = s.(fn{end}); | |
16 str = [str sprintf('''%s'', %s)',fn{end}, valueString(value))]; | |
17 end | |
18 | |
19 function str = valueString(value) | |
20 if ischar(value) | |
21 str = ['''' value '''']; | |
22 else | |
23 str = num2str(value); | |
24 end | |
25 end |