Rev 7209 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
slib_data=$wims_read_parm
# data: transform items to lines.
slib_data=!singlespace $slib_data
slib_data=!declosing $slib_data
slib_data=!translate internal ; to $\
$ in $slib_data
slib_data=!nonempty lines $slib_data
slib_cnt=!linecnt $slib_data
!if $slib_cnt=1
!if , notin $slib_data
slib_data=!words2lines $slib_data
!else
slib_data=!items2lines $slib_data
!endif
slib_cnt=!linecnt $slib_data
!endif
# Is each line enclosed in parentheses?
slib_test=!line 1 of $slib_data
slib_test=!declosing $slib_test
slib_test=!itemcnt $slib_test
!if $slib_test>1
# Remove line parentheses. We don't simply translate parentheses
# into spaces because data may include embedded computations.
slib_d2=
!for slib_i=1 to $slib_cnt
slib_l=!line $slib_i of $slib_data
slib_l=!declosing $slib_l
slib_l=!trim $slib_l
slib_d2=!append line $slib_l to $slib_d2
!next slib_i
slib_data=!nonempty lines $slib_d2
slib_cnt=!linecnt $slib_data
!endif
!if $slib_cnt>2
slib_x=!column 1 of $slib_data
slib_y=!column 2 of $slib_data
!else
!distribute lines $slib_data into slib_x, slib_y
!endif
!endif
slib_data=!declosing $slib_x
slib_weight=!declosing $slib_y
!if $slib_weight!=$empty
slib_tw=!sum x for x in $slib_weight
slib_tw=$[$slib_tw]
# zero total weight implies division by zero!
!if NaN isin $slib_tw or abs($slib_tw)<10^-10
slib_weight=
!endif
!endif