File Manager

Current Path : /usr/share/doc/crm114/examples/tests/
Upload File :
Current File : //usr/share/doc/crm114/examples/tests/isolate_reclaim_test.crm

#! /usr/bin/crm
#
#	isolate_reclaim_test.crm - test reclamation of ISOLATEd variables

# Copyright 2009 William S. Yerazunis.
# This file is under GPLv3, as described in COPYING.
#

#     Test the reclamation of ISOLATEd variables.
window
isolate (:l:) //
alter (:_dw:) /foo bar baz/
match (:z:) /.*/
output /\n isol: :*:_iso:\n/
isolate (:l:) //
#   Note that :i: contains the trailing linefeed, etc. from the input, but
#    that :: does not.  So, when we reclaim :i:, we get back one character.
#
isolate (:i:) /:*:z:/
output /i is >:*:i:<\n/
match [:i:] (:: :f: :c: :b:) /(foo)(.*)(baz)/
isolate (:endmarker:) /endmark/
eval (:l:) /:#:_iso:/
output /starting used: :*:l:\n/
match (:i:)   /./
eval (:l:) /:#:_iso:/
output /release :i: used: :*:l:\n/
match (::)   /./
eval (:l:) /:#:_iso:/
output /release ::  used: :*:l:\n/
match (:i:)   /./
eval (:l:) /:#:_iso:/
output /release :i: used: :*:l:\n/
match (:f:)   /./
eval (:l:) /:#:_iso:/
output /release :f: used: :*:l:\n/
match (:c:)   /./
eval (:l:) /:#:_iso:/
output /release :c: used: :*:l:\n/
match (:b:)   /./
eval (:l:) /:#:_iso:/
output /release :b: used: :*:l:\n/

exit

isolate (:i:) /:*:z:/
output /i is >:*:i:<\n/
match [:i:] (:: :f: :c: :b:) /(foo)(.*)(baz)/
eval (:l:) /:#:_iso:/
output /starting used: :*:l:\n/
match (::)   /./
eval (:l:) /:#:_iso:/
output /release ::  used: :*:l:\n/
match (:i:)   /./
eval (:l:) /:#:_iso:/
output /release :i: used: :*:l:\n/
match (:f:)   /./
eval (:l:) /:#:_iso:/
output /release :f: used: :*:l:\n/
match (:c:)   /./
eval (:l:) /:#:_iso:/
output /release :c: used: :*:l:\n/
match (:b:)   /./
eval (:l:) /:#:_iso:/
output /release :b: used: :*:l:\n/

isolate (:i:) /:*:z:/
output /i is >:*:i:<\n/
match [:i:] (:: :f: :c: :b:) /(foo)(.*)(baz)/
eval (:l:) /:#:_iso:/
output /starting used: :*:l:\n/
match (::)   /./
eval (:l:) /:#:_iso:/
output /release ::  used: :*:l:\n/
match (:i:)   /./
eval (:l:) /:#:_iso:/
output /release :i: used: :*:l:\n/
match (:f:)   /./
eval (:l:) /:#:_iso:/
output /release :f: used: :*:l:\n/
match (:c:)   /./
eval (:l:) /:#:_iso:/
output /release :c: used: :*:l:\n/
match (:b:)   /./
eval (:l:) /:#:_iso:/
output /release :b: used: :*:l:\n/

isolate (:i:) /:*:z:/
output /i is >:*:i:<\n/
match [:i:] (:: :f: :c: :b:) /(foo)(.*)(baz)/
eval (:l:) /:#:_iso:/
output /starting used: :*:l:\n/
match (::)   /./
eval (:l:) /:#:_iso:/
output /release ::  used: :*:l:\n/
match (:i:)   /./
eval (:l:) /:#:_iso:/
output /release :i: used: :*:l:\n/
match (:f:)   /./
eval (:l:) /:#:_iso:/
output /release :f: used: :*:l:\n/
match (:c:)   /./
eval (:l:) /:#:_iso:/
output /release :c: used: :*:l:\n/
match (:b:)   /./
eval (:l:) /:#:_iso:/
output /release :b: used: :*:l:\n/

File Manager Version 1.0, Coded By Lucas
Email: hehe@yahoo.com