Annotation of gforth/environ.fs, revision 1.1
1.1 ! anton 1: \ ENVIRON.FS Answer environmental queries 20may93jaw
! 2:
! 3: \ May be cross-compiled
! 4:
! 5: decimal
! 6:
! 7: AVARIABLE EnvLink 0 EnvLink !
! 8:
! 9: : (env)
! 10: EnvLink linked
! 11: dup c, here over chars allot swap move align
! 12: , ;
! 13:
! 14: : (2env)
! 15: EnvLink linked
! 16: dup $80 or
! 17: c, here over chars allot swap move align
! 18: , , ;
! 19:
! 20: : env" ( n -- )
! 21: State @
! 22: IF postpone S" postpone (env)
! 23: ELSE [char] " parse (env) THEN ; immediate
! 24:
! 25: : 2env" ( d -- )
! 26: State @
! 27: IF postpone S" postpone (2env)
! 28: ELSE [char] " parse (2env) THEN ; immediate
! 29:
! 30:
! 31: : environment? EnvLink
! 32: BEGIN @ dup
! 33: WHILE dup cell+ count $1f and
! 34: 4 pick 4 pick compare 0=
! 35: IF nip nip cell+ count dup -rot
! 36: $1f and + aligned
! 37: swap $80 and IF 2@ ELSE @ THEN
! 38: EXIT
! 39: THEN
! 40: REPEAT
! 41: drop 2drop false ;
! 42:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>