Annotation of freem_fileman/DIM1.m, revision 1.1

1.1     ! snw         1: DIM1   ;SFISC/JFW,GFT-MUMPS SYNTAX CHECKER ;7/6/92  8:57 AM
        !             2:        ;;21.0;VA FileMan;;Dec 28, 1994
        !             3:        ;Per VHA Directive 10-93-142, this routine should not be modified.
        !             4:        Q:%ERR  S (%I,%N,%ERR,%(-1,2),%(-1,3))=0
        !             5: GG     D %INC G:%C="" FINISH^DIM2 I %C="%" F %C=%I+1:1 S %J=$E(%,%C) I %J'?1NU G GG:%J="",E:"""^%"[%J,GG
        !             6:        G E:%C=";"!($A(%C)>95)!($A(%C)<33),QUOTE:%C="""",FUNC:%C="$",SUB^DIM2:%C="(",UP^DIM2:%C=")",AR^DIM2:%C=",",SEL^DIM2:%C=":",GLO^DIM2:%C="^"
        !             7:        I %C="E",(($E(%,%I-1)?1N)!($E(%,%I-1)=".")) S %L1=$E(%,%I+1) I %L1?1N!("+-"[%L1) F %I=%I+2:1 S %C=$E(%,%I) I %C'?1N S %I=%I-1 G GG
        !             8:        I %C?1U D VAR^DIM2
        !             9:        G E:%ERR,GG:%C="",PAT^DIM2:%C="?",BINOP^DIM2:"=[]<>&!"[%C,MTHOP^DIM2:"/\*#_"[%C
        !            10:        G UNOP^DIM2:"'+-"[%C,IND^DIM2:%C="@"
        !            11:        I %C="." G GG:$P($G(%(%N-1,0)),"^")="P" D %INC S %L1=$E(%,%I-2) G E:((%C'?1N)&("':=+-\/<>[],)*&!_#"'[%C))!(("':=+-\/<>[],(_*#!&"'[%L1)&(%L1'?1N))!(%C'?1N&(%L1'?1N))
        !            12:        I %C?1N,$E(%,%I+1)]"" G E:$E(%,%I+1)'?1NP
        !            13: GG1    I %C]"","$(),:"""[%C S %I=%I-1
        !            14:        G GG
        !            15: QUOTE  F %J=0:0 D %INC Q:%C=""!(%C="""")
        !            16:        G E:%C=""!("[]()><\/+-=&!_#*,;:'"""'[$E(%,%I+1)) D:$D(%(%N-1,"F")) FN:%(%N-1,"F")["FN" G E:%ERR,GG
        !            17: FUNC   D %INC G EXT:%C="$",E:%C'?1U,SPV:$E(%,%I,999)'?.U1"(".E,E:"ACDEFGJLNOPQRSTVZ"'[%C!(%C=""),NFUNC:$E(%,%I,%I+1)="FN"!($E(%,%I,%I+1)="TR"),FUNC1:$E(%,%I+1)="("!(%C="Z")
        !            18:        S %T=$T(FNC) G E:%T'[(","_$E(%,%I,$F(%,"(",%I)-2)_"^")
        !            19: FUNC1  S %F1=$P($T(FNC),",",$F("ACDEFGJLNOPQRSTVZ",%C))
        !            20: FUNC2  S %I=$F(%,"(",%I)-1,%(%N,0)="1^"_$P(%F1,"^",2),%(%N,1)=0,%(%N,2)=0,%(%N,3)=0,%(%N,"F")=%F1,%N=%N+1 S:$E(%F1,1)="S" %(%N-1,2)=1 G DATA^DIM2:"DNOQG"[$E(%F1,1),GG
        !            21: NFUNC  S %T=",FNUMBER^2;3,TRANSLATE^2;3" G NFUNC1:$E(%,%I+2)="(" G E:%T'[(","_$E(%,%I,$F(%,"(",%I)-2)_"^")
        !            22: NFUNC1 S %F1=$P(%T,",",$F("FT",%C)) G FUNC2
        !            23: SPV    I $E(%,%I+1)?1U S %I=%I+1,%C=%C_$E(%,%I) G SPV
        !            24:        I "HIJSTXYZ"[%C&(%C?1U)!(%C?1"Z".U)!(",HOROLOG,IO,JOB,STORAGE,TEST,"[(","_%C_",")),"[],)><=_&#!'+-*\/?"[$E(%,%I+1) G GG
        !            25: E      G ERR^DIM2
        !            26: %INC   S %I=%I+1,%C=$E(%,%I) Q
        !            27: FN     Q:%(%N-1,1)'=1  F %FZ=%I-1:-1 S %FN=$E(%,%FZ) Q:%FN=""""
        !            28:        S %FN=$E(%,%FZ+1,%I-1) F %FZ=1:1 Q:$E(%FN,%FZ)=""  I "+-,TP"'[$E(%FN,%FZ) S %ERR=1 Q
        !            29:        Q:%ERR  I %FN["P" F %FZ=1:1 Q:$E(%FN,%FZ)=""  I "+-T"[$E(%FN,%FZ) S %ERR=1 Q
        !            30:        Q
        !            31: EXT    D %INC
        !            32:        F %I=%I+1:1 S %C1=$E(%,%I) Q:%C1?1PC&("^%"'[%C1)!(%C1="")  S %C=%C_%C1
        !            33:        G:%C="" E G:%C?.E1"^" E
        !            34:        S %C1=$P(%C,"^",2) I %C1]"",%C1'?1U.7AN,%C1'?1"%".7AN G E
        !            35:        S %C=$P(%C,"^") I %C]"",%C'?1U.7AN,%C'?1"%".7AN,%C'?1.8N G E
        !            36:        I $E(%,%I)="(",$E(%,%I+1)'=")" S %(%N,0)="P^",(%(%N,1),%(%N,2),%(%N,3))=0,%N=%N+1 G GG
        !            37:        S %I=%I+$S($E(%,%I,%I+1)="()":1,1:-1)
        !            38:        G GG:"[],)><=_&#!'+-*/\?"[$E(%,%I+1),E
        !            39:        ;
        !            40: FNC    ;;,ASCII^1;2,CHAR^1;999,DATA^1;1,EXTRACT^1;3,FIND^2;3,GET^1;1,JUSTIFY^2;3,LENGTH^1;2,NEXT^1;1,ORDER^1;1,PIECE^2;4,QUERY^1;1,RANDOM^1;1,SELECT^1;999,TEXT^1;1,VIEW^1;999,ZFUNC^1;999

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>