Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: AZHLSCU3

AZHLSCU3.m

Go to the documentation of this file.
  1. AZHLSCU3 ; IHS/ADC/GTH:KEU - UNDEF CHECKER. PROCESS SET/READ/KILL/NEW COMMANDS ;
  1. ;;5.0;AZHLSC;;JUL 10, 1996
  1. PEEK S Y=$G(LV(LV,LI+1)) Q
  1. PEEK2 S Y=$G(LV(LV,LI+2)) Q
  1. INC2 S LI=LI+1 ;Drop into INC
  1. INC S LI=LI+1,S=$G(LV(LV,LI)),S1=$G(LV(LV,LI+1)),CH=$E(S) G ERR:$A(S)=10 Q
  1. DN S LI(LV)=LI,LI(LV,1)=AC,LV=LV+1,LI=LI(LV),AC=NOA
  1. Q
  1. UP ;Inc LI as we save to skip the $C(10).
  1. D PEEK S:$A(Y)=10 LI=LI+1 S LI(LV)=LI,LV=LV-1,LI=LI(LV),AC=LI(LV,1) Q
  1. PEEKDN S Y=$G(LV(LV+1,LI(LV+1)+1)) Q
  1. FIND F Y=LI:1:AC Q:L[$G(LV(LV,Y))
  1. ERR S (S,S1,CH)="" Q
  1. Q
  1. S S STR=ARG,ARG="",RHS=0 D ^AZHLSCU9
  1. S2 S GK="" D INC
  1. Q:S=""
  1. I CH="," S RHS=0 G S2
  1. I CH="=" S RHS=1 G S2
  1. I CH="^" D FL G S2
  1. I CH="@" S L="," D ASM S:Y'["=" RHS=1 D INC,ARG^AZHLSCU2 G S2
  1. I CH="(" D MULT G S2
  1. D FL
  1. G S2
  1. MULT D INC S NOA=S
  1. D DN S AC=AC+LI F Q:AC'>LI S GK="*" D INC,ARG^AZHLSCU2
  1. D UP Q
  1. FL S:'RHS GK="*" D ARG^AZHLSCU2
  1. Q
  1. KL ;Process KILL
  1. S STR=ARG,ARG(1)=ARG,ARG="" D ^AZHLSCU9
  1. A D INC Q:S="" G A:CH="," S LOC="L" D @$S(CH="@":"KL1",CH="^":"KL2",CH="(":"KL4",1:"KL3") G A
  1. KL1 D INC,ARG^AZHLSCU2 Q
  1. KL2 S GK="!"
  1. G ARG^AZHLSCU2
  1. KL3 I "^DT^DTIME^DUZ^IOST^IOM^IOS^"[("^"_S_"^") S ERR(1)=S
  1. I "IO"=S D:S1="(" PEEKDN S ERR(1)=S_$S(S1["(":S1_Y_")",1:"")
  1. KL5 S GK="!" D ARG^AZHLSCU2 Q ;KILL SUBS
  1. Q
  1. KL4 S NOA=S1 D DN,ARGS^AZHLSCU2,UP,INC2 Q
  1. NE ;NEW
  1. S STR=ARG D ^AZHLSCU9
  1. N2 D INC Q:S="" G N2:CH="," S GK="~" D ARG^AZHLSCU2 G N2
  1. ;
  1. RD S STR=ARG D ^AZHLSCU9 S ARG=""
  1. RD1 D INC Q:S=""
  1. ;I (CH="!")!(CH=",")!(CH=Q)!(CH="#") G RD1
  1. I '((CH="%")!(CH?1A)!(CH="*")) D RD3 G RD1
  1. S L="," D ASM
  1. D RD2 G RD1
  1. RD2 Q:","[CH
  1. I "#:"[CH D INC,ARG^AZHLSCU2,INC G RD2
  1. I (CH="%")!(CH?1A) S LOC="L",GK="*" D ARG^AZHLSCU2,INC G RD2
  1. D INC G RD2
  1. RD3 Q:","[CH I "!#?"[CH D INC G RD3
  1. I (CH="%")!(CH?1A)!(CH="@") D ARG^AZHLSCU2,INC G RD3
  1. Q
  1. ST ;
  1. S:'$D(V(LOC,S)) V(LOC,S)="" S:V(LOC,S)'[GK V(LOC,S)=V(LOC,S)_GK,GK="" Q
  1. Q
  1. ASM N CH S Y="" F %=LI:1 S CH=$G(LV(LV,%)) Q:L[CH S Y=Y_" "_CH
  1. Q