0001 function vb_util_show_struct(target_struct, rec_flag)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 if ~exist('target_struct', 'var'), target_struct = []; end
0021 if ~exist('rec_flag', 'var'), rec_flag = []; end
0022 [target_struct, rec_flag] = inner_check_arguments(target_struct, rec_flag);
0023
0024 if isempty(target_struct)
0025 fprintf('!!!EMPTY!!!\n');
0026 return;
0027 end
0028
0029 if rec_flag == 0
0030 target_struct
0031 return;
0032 end
0033
0034
0035
0036
0037 if ~isstruct(target_struct)
0038 if isinteger(target_struct)
0039 fprintf('%d\n', target_struct);
0040
0041 elseif isfloat(target_struct)
0042 fprintf('%f\n', target_struct);
0043
0044 elseif ischar(target_struct)
0045 fprintf('%s\n', target_struct);
0046
0047 elseif iscell(target_struct)
0048 n_elm = length(target_struct);
0049 for i_elm = 1:n_elm
0050 fprintf('''%s''\n', target_struct{i_elm});
0051 end
0052 else
0053 fprintf('--- UNEXPECTED TYPE\n');
0054 end
0055 return;
0056 end
0057
0058 fields = fieldnames(target_struct);
0059 n_field = length(fields);
0060 for i_field = 1:n_field
0061
0062 fprintf('\n--- ');
0063 cmd = sprintf('vb_util_show_struct(target_struct.%s)', fields{i_field});
0064 fprintf('%s ---\n', cmd);
0065 eval(cmd);
0066 end
0067 return;
0068
0069
0070
0071
0072
0073
0074
0075 function [target_struct, rec_flag] = ...
0076 inner_check_arguments(target_struct, rec_flag)
0077 func_ = mfilename;
0078 if isempty(target_struct)
0079
0080 end
0081
0082 if isempty(rec_flag)
0083 rec_flag = 1;
0084 end
0085 return;
0086
0087
0088
0089
0090
0091