Interval.st
changeset 23704 bb2dd8bedf16
parent 23687 d50488d89e81
child 24565 15958103b2af
--- a/Interval.st	Sun Feb 10 14:51:33 2019 +0100
+++ b/Interval.st	Sun Feb 10 14:52:03 2019 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
 "
  COPYRIGHT (c) 1989 by Claus Gittinger
               All Rights Reserved
@@ -97,6 +95,7 @@
     ^ self new fromLiteralArrayEncoding:anArray.
 ! !
 
+
 !Interval methodsFor:'accessing'!
 
 at:index
@@ -475,6 +474,64 @@
 
 !Interval methodsFor:'queries'!
 
+includes:anElement
+    "return true if anElement is in the interval (Numeric compare using =)"
+
+    |rest|
+
+    stop >= start ifTrue:[
+        (anElement between:start and:stop) ifFalse:[^ false].
+    ] ifFalse:[
+        (anElement between:stop and:start) ifFalse:[^ false].
+    ].
+    rest := (anElement - start) rem:step.
+    ^ rest = 0
+
+    "
+     (1 to:15) includes:0
+     (1 to:15) includes:16
+     (1 to:15) includes:1    
+     (1 to:15) includes:15   
+     (1 to:15) includes:5    
+     (1 to:15) includes:14   
+     (1 to:15) includes:4   
+     (1 to:15) includes:4.0   
+     (1 to:15) includes:4.4   
+
+     (1 to:15 by:3) includes:0
+     (1 to:15 by:3) includes:16
+     (1 to:15 by:3) includes:1    
+     (1 to:15 by:3) includes:15   
+     (1 to:15 by:3) includes:5    
+     (1 to:15 by:3) includes:4    
+     (1 to:15 by:3) includes:13   
+     (1 to:15 by:3) includes:14   
+     (1 to:15 by:3) includes:4.0   
+     (1 to:15 by:3) includes:4.4   
+
+     (10 to:-10 by:-3) includes:11   
+     (10 to:-10 by:-3) includes:10   
+     (10 to:-10 by:-3) includes:9   
+     (10 to:-10 by:-3) includes:8   
+     (10 to:-10 by:-3) includes:7   
+     (10 to:-10 by:-3) includes:4   
+     (10 to:-10 by:-3) includes:0   
+     (10 to:-10 by:-3) includes:-1   
+     (10 to:-10 by:-3) includes:-2   
+     (10 to:-10 by:-3) includes:-8     
+     (10 to:-10 by:-3) includes:-9     
+     (10 to:-10 by:-3) includes:-10    
+     (10 to:-10 by:-3) includes:-11    
+     (10 to:-10 by:-3) includes:-2.4   
+
+     (-10 to:-20 by:-2) includes:-16   
+     (-10 to:-20 by:-2) includes:-20   
+     (-10 to:-20 by:-2) includes:-23   
+     (-10 to:-20 by:-2) includes:-24   
+
+    "
+!
+
 isEmpty
     "return true, if the receiver is empty"
 
@@ -656,66 +713,6 @@
     "
 ! !
 
-!Interval methodsFor:'testing'!
-
-includes:anElement
-    "return true if anElement is in the interval (Numeric compare using =)"
-
-    |rest|
-
-    stop >= start ifTrue:[
-        (anElement between:start and:stop) ifFalse:[^ false].
-    ] ifFalse:[
-        (anElement between:stop and:start) ifFalse:[^ false].
-    ].
-    rest := (anElement - start) rem:step.
-    ^ rest = 0
-
-    "
-     (1 to:15) includes:0
-     (1 to:15) includes:16
-     (1 to:15) includes:1    
-     (1 to:15) includes:15   
-     (1 to:15) includes:5    
-     (1 to:15) includes:14   
-     (1 to:15) includes:4   
-     (1 to:15) includes:4.0   
-     (1 to:15) includes:4.4   
-
-     (1 to:15 by:3) includes:0
-     (1 to:15 by:3) includes:16
-     (1 to:15 by:3) includes:1    
-     (1 to:15 by:3) includes:15   
-     (1 to:15 by:3) includes:5    
-     (1 to:15 by:3) includes:4    
-     (1 to:15 by:3) includes:13   
-     (1 to:15 by:3) includes:14   
-     (1 to:15 by:3) includes:4.0   
-     (1 to:15 by:3) includes:4.4   
-
-     (10 to:-10 by:-3) includes:11   
-     (10 to:-10 by:-3) includes:10   
-     (10 to:-10 by:-3) includes:9   
-     (10 to:-10 by:-3) includes:8   
-     (10 to:-10 by:-3) includes:7   
-     (10 to:-10 by:-3) includes:4   
-     (10 to:-10 by:-3) includes:0   
-     (10 to:-10 by:-3) includes:-1   
-     (10 to:-10 by:-3) includes:-2   
-     (10 to:-10 by:-3) includes:-8     
-     (10 to:-10 by:-3) includes:-9     
-     (10 to:-10 by:-3) includes:-10    
-     (10 to:-10 by:-3) includes:-11    
-     (10 to:-10 by:-3) includes:-2.4   
-
-     (-10 to:-20 by:-2) includes:-16   
-     (-10 to:-20 by:-2) includes:-20   
-     (-10 to:-20 by:-2) includes:-23   
-     (-10 to:-20 by:-2) includes:-24   
-
-    "
-! !
-
 !Interval methodsFor:'visiting'!
 
 acceptVisitor:aVisitor with:aParameter