Mercurial > repos > public > sbplib
comparison checkSbplib.m @ 139:6cf264b023b0
Added script to check all the code in a directory.
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Tue, 23 Feb 2016 14:21:52 +0100 |
parents | |
children | 579c348244a0 |
comparison
equal
deleted
inserted
replaced
138:344bde2f9d9b | 139:6cf264b023b0 |
---|---|
1 function [files,res] = checkSbplib() | |
2 | |
3 | |
4 files = collectTargets([]); | |
5 | |
6 if nargout == 0 | |
7 checkcode(files); | |
8 return | |
9 end | |
10 | |
11 res = checkcode(files); | |
12 | |
13 % Remove any empty respones | |
14 I = []; | |
15 for i = 1:length(res) | |
16 if isempty(res{i}) | |
17 I(end+1) = i; | |
18 end | |
19 end | |
20 | |
21 files(I) = []; | |
22 res(I) = []; | |
23 end | |
24 | |
25 function targets = collectTargets(dirPath) | |
26 [mfiles, packages] = getFilesAndPackages(dirPath); | |
27 | |
28 targets = {}; | |
29 for i = 1:length(mfiles) | |
30 targets{i} = fullfile(dirPath, mfiles{i}); | |
31 end | |
32 | |
33 for i = 1:length(packages) | |
34 subtargets = collectTargets(fullfile(dirPath, packages{i})); | |
35 targets = [targets subtargets]; | |
36 end | |
37 end | |
38 | |
39 function [mfiles, packages] = getFilesAndPackages(dirPath) | |
40 if isempty(dirPath) | |
41 l = dir(); | |
42 else | |
43 l = dir(dirPath); | |
44 end | |
45 | |
46 packages = {}; | |
47 mfiles = {}; | |
48 | |
49 for i = 1:length(l) | |
50 if l(i).isdir && l(i).name(1) == '+' | |
51 packages{end+1} = l(i).name; | |
52 elseif ~l(i).isdir && strcmp(l(i).name(end-1:end),'.m') | |
53 mfiles{end+1} = l(i).name; | |
54 end | |
55 end | |
56 end |