Select - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


CodeTools[Profiling]

  

Select

  

select procedures from a table of profiling data

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

Select(selector, tab)

Parameters

selector

-

boolean valued procedure

tab

-

table of profiling data

Description

• 

The Select(selector, tab) command is similar to the select function. The boolean valued procedure, selector, is called on each element in tab.  A new table is returned containing only those elements of tab for which selector returns true.

• 

The selector parameter is a procedure that accepts two arguments. The first argument is the encoded name (see EncodeName) of the procedure and the second is the rtable containing the profiling data.

Examples

withCodeToolsProfiling:

selector := proc(n,t)
    # check the total number of function calls
    if (t[1][1] > 5) then
        return true;
    else
    return false;
    end if;
end proc;

selectorprocn&comma;tif5<t&lsqb;1&rsqb;&lsqb;1&rsqb;thenreturntrueelsereturnfalseend ifend proc

(1)

a := proc( )
    return 1;
end proc;

aprocreturn1end proc

(2)

b := proc( )
    local i;
    for i from 1 to 10 do
        a();
    end do;
end proc;

bproclocali&semi;forito10doaend doend proc

(3)

tBuildprocs=a&comma;b&comma;commands=b

ttable_Inert_ASSIGNEDNAMEb&comma;PROC=1001001000&comma;_Inert_ASSIGNEDNAMEa&comma;PROC=10001000

(4)

PrintProfilest

a
a := proc()
     |Calls Seconds  Words|
PROC |   10   0.000      0|
   1 |   10   0.000      0| return 1
end proc

b
b := proc()
local i;
     |Calls Seconds  Words|
PROC |    1   0.000      0|
   1 |    1   0.000      0| for i to 10 do
   2 |   10   0.000      0|     a()
                            end do
end proc

sSelectselector&comma;t

stable_Inert_ASSIGNEDNAMEa&comma;PROC=10001000

(5)

PrintProfiless

a
a := proc()
     |Calls Seconds  Words|
PROC |   10   0.000      0|
   1 |   10   0.000      0| return 1
end proc

See Also

CodeTools[EncodeName]

CodeTools[Profiling]

CodeTools[Profiling][Build]

CodeTools[Profiling][GetProfileTable]

CodeTools[Profiling][Merge]

CodeTools[Profiling][PrintProfiles]

CodeTools[Profiling][Remove]

rtable

select