DIR3 ;SFISC/DCM,RDS-READER-MAID (PROCESS RANGE/LIST) ;6/28/2009
Source file <DIR3.m>
| Name | Comments | DBIA/ICR reference | 
|---|---|---|
| LC | ; handle unscreened compressed lists (no DIR("S")) ; LC to LIST checks the user's list in X, building ^TMP($J,"DIR") | |
| LC0 | ; check one list element, calls LC1 to put it in ^TMP($J,"DIR") | |
| LC1 | ; modify ^TMP($J,"DIR") to incorporate a list element, handle overlap | |
| LL | ; handle uncompressed lists & screened compressed lists | |
| LIST | ; transfer output list from ^TMP($J,"DIR") to Y | |
| L | ; LIST OR RANGE | |
| 3 | ;;Response must be a positive number | |
| 1 | ;;Response should be no less than ; and no greater than | |
| LCD | ; determine increment size for ranges (handle decimals) | |
| 2 | ;;Response must be no more than ; decimal digit | |
| 4 | ;;Invalid number or range | |
| L0 | ||
| L1 | ||
| LCK | 
| Name | Line Occurrences (* Changed, ! Killed) | 
|---|---|
| ^TMP($J | L+2!, LC+4, LIST+2, LIST+5, LIST+9!, LC1+1, LC1+4, LC1+7, LC1+8*, LC1+9* | 
| Name | Line Occurrences | 
|---|---|
| @( | L+9 | 
| L0 | LL+2 | 
| L1 | L0+2, L0+4, L0+5, L0+6 | 
| LC0 | LC+3 | 
| LC1 | L1+3, LC0+4 | 
| LCD | LL+1, LC+2 | 
| LCK | L0+1, LC0+1 | 
| LIST | LL+4 | 
| Name | Field # of Occurrence | 
|---|---|
| ^( | LIST+3, LIST+5, LC1+2, LC1+3, LC1+5, LC1+6, LC1+7! | 
| >> | Not killed explicitly | 
| * | Changed | 
| ! | Killed | 
| ~ | Newed | 
| Name | Field # of Occurrence | 
|---|---|
| % | L+1~, L1+5*, L1+6, LCK+1~*, LCK+2, LCK+3*, LCK+4, LCK+6, LCK+7, LCD+1* , LC+3* | 
| %1 | L+1~, L1+2*, LCD+1*, LCD+2, LC+3*, LIST+1*, LIST+2*, LIST+3, LIST+5, LC0+1* , LC0+2*, LC0+3*, LC1+1, LC1+2*, LC1+3*, LC1+6*, LC1+7, LC1+8, LC1+9 | 
| %2 | L+1~, L1+2*, LC0+1*, LC0+2*, LC0+3*, LC1+1, LC1+4, LC1+5*, LC1+6*, LC1+7 , LC1+8 | 
| %3 | L+1~, LCK+3~*, LC1+1*, LC1+2, LC1+3, LC1+4*, LC1+5, LC1+6, LC1+7* | 
| %4 | L+1~, LC1+3*, LC1+6* | 
| >> %A | L+9, LL+4, L1, LCK+2, LCK+3 | 
| >> %B1 | L+13, LCK+4, LCK+5, LCK+8 | 
| >> %B2 | L+13, LCK+4, LCK+6, LCK+8 | 
| >> %B3 | L+8, L+14, LL+1, L0+3, LCK+7, LCK+9, LCD+1, LC+2, LC1+4 | 
| %BA | L+1~, L+3*, L1+1, L1+6 | 
| %C | L+1~, L+3*, L+10, L1+4*, L1+5, L1+6, LIST+1, LIST+3, LIST+4*, LIST+5 , LIST+6, LIST+7, LIST+8* | 
| >> %E | L+4, L+5*, L+6*, L+7*, L+8*, L+9, L+10*, L+11, L+13, L+14 , L+15, LL+2, LL+3, L0+2, LCK+1*, LCK+2*, LCK+4*, LCK+5*, LCK+6*, LCK+7* , LCK+8*, LCK+9*, LC+3, LIST+6, LIST+7*, LC0+1* | 
| %I | L+1~, L+4*, LL+2* | 
| %I1 | L+1~, L+3*, L0+4, L0+5, LCD+2*, LC1+2, LC1+4, LC1+5, LC1+6, LC1+7 | 
| %I2 | L+1~, L+3*, LCD+2*, LC1+1 | 
| %J | L0~, L0+2*, L0+4*, L0+5*, L0+6*, L1+1, L1+2, L1+4, L1+5, L1+6 | 
| >> %N | L+11 | 
| >> %W | L+12*, L+13*, L+14* | 
| %X | L+1~, L+4*, L+5, L+6, L+7, L+8, LL+2*, L0+2, L0+4*, L0+5 , L0+6, LCK, LCK+1, LCK+2, LCK+3*, LCK+4, LCK+5, LCK+7, LCK+8, LCK+9 , LC0+1* | 
| >> DIR("S" | L+3, L+9 | 
| >> X | L+4, LL+2, LC+3 | 
| Y | L+15!*, L+16*, L1+1*, L1+6* | 
| Y( | L+10, L1+4*, L1+5, L1+6*, LIST+1*, LIST+3*, LIST+4*, LIST+5*, LIST+6, LIST+8! | 
| Y(0 | L+3*, L+16 | 
| Name | Field # of Occurrence | 
|---|---|
| $T(@(1) | L+12 |