Subversion Repositories wimsdev

Rev

Rev 16113 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
20 reyssat 1
!if $casesplit!=$empty
2
 splitobj=!translate internal $\
3
$ to $	$ in $objects
4
 !if $goalsplit!=yes
5
  oldobject=0
6
  newobject0=!line 1 of $casesplit
7
  newobject0=!translate internal $	$ to $\
8
$ in $newobject0
9
 !else
10
  newobject=!line 1 of $casesplit
11
 !endif
12
!endif
13
 
14
shift=0
15
!distribute item <,>,= into lt,gt,eq
16
!for i in $oldobject
17
 newobject=!nonempty lines $(newobject$i)
18
 newobject=!trim $newobject
19
 no=!line 1 of $newobject
20
 !if $i=0
21
  ln=!replace internal $\
22
$ by $\
23
> $ in > $newobject
24
  newObject=$ln
25
  n=!linecnt $ln
26
  !for k=1 to $n
27
   l=!line $k of $ln
28
   !if $l notlineof $objects
29
    objects=!append line $objects to $l
30
    !advance shift
31
   !endif
32
  !next k
33
 !else
34
  l=!line $(methparm$i) of $(mtobj$i)
35
  d=!item 1 of $l
36
  !distribute words $d into l_,s_,e_
37
  l_=$[$l_+$shift]
38
  L=!line $l_ of $objects
39
  !reset l1,l2
40
  !if $s_>0
41
   l1=!char 1 to $s_ of $L
42
  !endif
43
  v_=!charcnt $L
44
  !if $e_<$v_
45
   l2=!char $e_+1 to -1 of $L
46
  !endif
47
  LL=$l1$newobject$l2
48
  !read deduc/objsimp.proc LL
49
  newObject=$LL
50
  D=!word 1 of $L
51
  impl=>
52
  bt=<
53
  !if $L=$empty or ($D=$impl and $i notitemof $forcereplace)
54
   !if $LL notlineof $objects and $newobject!=$empty
55
    objects=!append line $objects to $LL
56
    !advance shift
57
   !endif
58
  !else
59
   !if $newobject!=$empty
60
    objects=!replace line number $l_ by $LL in $objects
61
   !else
62
    objects=!replace line number $l_ by $ in $objects
63
   !endif
64
  !endif
65
 !endif
66
!next i
67
 
68
objects=!nonempty lines $objects
69
newObject=!trim $newObject
70
m_newobject=!translate internal $\
71
$ to $	$ in $no
72