On 11/10/2015 12:51 PM, Duane Scott wrote:
I am using RDi 9.1 and was wondering why, when filtering the Outline for the letter M, the outline does not show occurrences of source where M is uses as an array index. Is this also a feature of more recent versions?
I'm not a heavy user of Outline View so this post was an eye opener.
First, on my 9.5, filtering on 'm' (without quotes) does return a
reference to the declaration of m:
dcl-s m int(10);
It also does show array references using m as an index:
var = arr(m);
It also shows every single place that any variable is modified:
saveLabCouncil : Character (3)
230 (M)
It turns out that I only ever use single character variables locally,
things like array indexes which are declared and used within a few lines
of each other. I never need to filter to look for them, because they're
everywhere and finding them all is mostly meaningless to me.
However.
I started looking at how Outline View does filtering, and it seems like
a very simple regexp over the entire text of the presentation within the
view. So, filtering for 'char' returns a list of all variables defined
as character. Filtering for 'param' returns all the lines which are
parameters. Filtering for 'ext' gives you variables with 'ext' in them
along with anything declared EXTPROC and EXTPGM. Filtering on '('
returns just about everything. Filtering on '18' returns all the
variables which are 18 long, all the variables used on lines 189, 218,
and 2180.
I can't tell if that's intentional or not. I'm also not sure I'd want
it changed. Knowing that it will filter on every bit of the text in the
View may be good enough to be able to use the View better.
As an Amazon Associate we earn from qualifying purchases.