Warning, /frameworks/syntax-highlighting/autotests/reference/highlight.sml.ref is written in an unsupported language. File is not indexed.
0001 <Keyword>datatype</Keyword><Normal Text> Colour = R | B</Normal Text><br/> 0002 <Normal Text></Normal Text><br/> 0003 <Keyword>datatype</Keyword><Normal Text> 'a RBtree = E | N </Normal Text><Keyword>of</Keyword><Normal Text> Colour * 'a * 'a RBtree * 'a RBtree</Normal Text><br/> 0004 <Normal Text></Normal Text><br/> 0005 <Comment>(* Dieses lookup funktioniert nur fuer Elemente vom Typ int *)</Comment><br/> 0006 <Normal Text></Normal Text><br/> 0007 <Keyword>fun</Keyword><Normal Text> lookup (x,E) = </Normal Text><Keyword>false</Keyword><br/> 0008 <Normal Text> | lookup (x,N(_,y,l,r)) = </Normal Text><br/> 0009 <Normal Text> </Normal Text><Keyword>if</Keyword><Normal Text> x < y </Normal Text><Keyword>then</Keyword><Normal Text> lookup(x,l)</Normal Text><br/> 0010 <Normal Text> </Normal Text><Keyword>else</Keyword><Normal Text> </Normal Text><Keyword>if</Keyword><Normal Text> y < x </Normal Text><Keyword>then</Keyword><Normal Text> lookup(x,r)</Normal Text><br/> 0011 <Normal Text> </Normal Text><Keyword>else</Keyword><Normal Text> </Normal Text><Keyword>true</Keyword><br/> 0012 <Normal Text></Normal Text><br/> 0013 <Keyword>fun</Keyword><Normal Text> balance (B,x,N(R,y,N(R,z,t1,t2),t3),t4) =</Normal Text><br/> 0014 <Normal Text> N(R,y,N(B,z,t1,t2),N(B,x,t3,t4))</Normal Text><br/> 0015 <Normal Text> | balance (B,x,N(R,y,t1,N(R,z,t2,t3)),t4) =</Normal Text><br/> 0016 <Normal Text> N(R,z,N(B,y,t1,t2),N(B,x,t3,t4))</Normal Text><br/> 0017 <Normal Text> | balance (B,x,t1,N(R,y,N(R,z,t2,t3),t4)) =</Normal Text><br/> 0018 <Normal Text> N(R,z,N(B,x,t1,t2),N(B,y,t3,t4))</Normal Text><br/> 0019 <Normal Text> | balance (B,x,t1,N(R,y,t2,N(R,z,t3,t4))) =</Normal Text><br/> 0020 <Normal Text> N(R,y,N(B,x,t1,t2),N(B,z,t3,t4))</Normal Text><br/> 0021 <Normal Text> | balance t = N t</Normal Text><br/> 0022 <Normal Text></Normal Text><br/> 0023 <Keyword>fun</Keyword><Normal Text> insert(x,t) =</Normal Text><br/> 0024 <Normal Text> </Normal Text><Keyword>let</Keyword><br/> 0025 <Normal Text> </Normal Text><Keyword>fun</Keyword><Normal Text> ins E = N(R,x,E,E)</Normal Text><br/> 0026 <Normal Text> | ins (t </Normal Text><Keyword>as</Keyword><Normal Text> N(c,y,l,r)) = </Normal Text><br/> 0027 <Normal Text> </Normal Text><Keyword>if</Keyword><Normal Text> x < y </Normal Text><Keyword>then</Keyword><Normal Text> balance (c,y,ins l,r)</Normal Text><br/> 0028 <Normal Text> </Normal Text><Keyword>else</Keyword><Normal Text> </Normal Text><Keyword>if</Keyword><Normal Text> y < x </Normal Text><Keyword>then</Keyword><Normal Text> balance (c,y,l,ins r)</Normal Text><br/> 0029 <Normal Text> </Normal Text><Keyword>else</Keyword><Normal Text> t</Normal Text><br/> 0030 <Normal Text> </Normal Text><Keyword>val</Keyword><Normal Text> N(_,y,l,r) = ins t</Normal Text><br/> 0031 <Normal Text> </Normal Text><Keyword>in</Keyword><Normal Text> N(B,y,l,r)</Normal Text><br/> 0032 <Normal Text> </Normal Text><Keyword>end</Keyword><br/>