@@ -44,6 +44,10 @@ use iter::*;
44
44
use marker:: Copy ;
45
45
use num:: Int ;
46
46
use ops:: { FnMut , self , Index } ;
47
+ #[ cfg( stage0) ]
48
+ use ops:: FullRange as RangeFull ;
49
+ #[ cfg( not( stage0) ) ]
50
+ use ops:: RangeFull ;
47
51
use option:: Option ;
48
52
use option:: Option :: { None , Some } ;
49
53
use result:: Result ;
@@ -543,10 +547,10 @@ impl<T> ops::Index<ops::RangeFrom<uint>> for [T] {
543
547
}
544
548
}
545
549
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
546
- impl < T > ops:: Index < ops :: FullRange > for [ T ] {
550
+ impl < T > ops:: Index < RangeFull > for [ T ] {
547
551
type Output = [ T ] ;
548
552
#[ inline]
549
- fn index ( & self , _index : & ops :: FullRange ) -> & [ T ] {
553
+ fn index ( & self , _index : & RangeFull ) -> & [ T ] {
550
554
self
551
555
}
552
556
}
@@ -584,10 +588,10 @@ impl<T> ops::IndexMut<ops::RangeFrom<uint>> for [T] {
584
588
}
585
589
}
586
590
#[ stable( feature = "rust1" , since = "1.0.0" ) ]
587
- impl < T > ops:: IndexMut < ops :: FullRange > for [ T ] {
591
+ impl < T > ops:: IndexMut < RangeFull > for [ T ] {
588
592
type Output = [ T ] ;
589
593
#[ inline]
590
- fn index_mut ( & mut self , _index : & ops :: FullRange ) -> & mut [ T ] {
594
+ fn index_mut ( & mut self , _index : & RangeFull ) -> & mut [ T ] {
591
595
self
592
596
}
593
597
}
@@ -750,6 +754,7 @@ impl<'a, T> ops::Index<ops::RangeFrom<uint>> for Iter<'a, T> {
750
754
}
751
755
}
752
756
757
+ #[ cfg( stage0) ]
753
758
#[ unstable( feature = "core" ) ]
754
759
impl < ' a , T > ops:: Index < ops:: FullRange > for Iter < ' a , T > {
755
760
type Output = [ T ] ;
@@ -758,6 +763,15 @@ impl<'a, T> ops::Index<ops::FullRange> for Iter<'a, T> {
758
763
self . as_slice ( )
759
764
}
760
765
}
766
+ #[ cfg( not( stage0) ) ]
767
+ #[ unstable( feature = "core" ) ]
768
+ impl < ' a , T > ops:: Index < RangeFull > for Iter < ' a , T > {
769
+ type Output = [ T ] ;
770
+ #[ inline]
771
+ fn index ( & self , _index : & RangeFull ) -> & [ T ] {
772
+ self . as_slice ( )
773
+ }
774
+ }
761
775
762
776
impl < ' a , T > Iter < ' a , T > {
763
777
/// View the underlying data as a subslice of the original data.
@@ -821,30 +835,30 @@ impl<'a, T> ops::Index<ops::Range<uint>> for IterMut<'a, T> {
821
835
type Output = [ T ] ;
822
836
#[ inline]
823
837
fn index ( & self , index : & ops:: Range < uint > ) -> & [ T ] {
824
- self . index ( & ops :: FullRange ) . index ( index)
838
+ self . index ( & RangeFull ) . index ( index)
825
839
}
826
840
}
827
841
#[ unstable( feature = "core" ) ]
828
842
impl < ' a , T > ops:: Index < ops:: RangeTo < uint > > for IterMut < ' a , T > {
829
843
type Output = [ T ] ;
830
844
#[ inline]
831
845
fn index ( & self , index : & ops:: RangeTo < uint > ) -> & [ T ] {
832
- self . index ( & ops :: FullRange ) . index ( index)
846
+ self . index ( & RangeFull ) . index ( index)
833
847
}
834
848
}
835
849
#[ unstable( feature = "core" ) ]
836
850
impl < ' a , T > ops:: Index < ops:: RangeFrom < uint > > for IterMut < ' a , T > {
837
851
type Output = [ T ] ;
838
852
#[ inline]
839
853
fn index ( & self , index : & ops:: RangeFrom < uint > ) -> & [ T ] {
840
- self . index ( & ops :: FullRange ) . index ( index)
854
+ self . index ( & RangeFull ) . index ( index)
841
855
}
842
856
}
843
857
#[ unstable( feature = "core" ) ]
844
- impl < ' a , T > ops:: Index < ops :: FullRange > for IterMut < ' a , T > {
858
+ impl < ' a , T > ops:: Index < RangeFull > for IterMut < ' a , T > {
845
859
type Output = [ T ] ;
846
860
#[ inline]
847
- fn index ( & self , _index : & ops :: FullRange ) -> & [ T ] {
861
+ fn index ( & self , _index : & RangeFull ) -> & [ T ] {
848
862
make_slice ! ( T => & [ T ] : self . ptr, self . end)
849
863
}
850
864
}
@@ -854,30 +868,30 @@ impl<'a, T> ops::IndexMut<ops::Range<uint>> for IterMut<'a, T> {
854
868
type Output = [ T ] ;
855
869
#[ inline]
856
870
fn index_mut ( & mut self , index : & ops:: Range < uint > ) -> & mut [ T ] {
857
- self . index_mut ( & ops :: FullRange ) . index_mut ( index)
871
+ self . index_mut ( & RangeFull ) . index_mut ( index)
858
872
}
859
873
}
860
874
#[ unstable( feature = "core" ) ]
861
875
impl < ' a , T > ops:: IndexMut < ops:: RangeTo < uint > > for IterMut < ' a , T > {
862
876
type Output = [ T ] ;
863
877
#[ inline]
864
878
fn index_mut ( & mut self , index : & ops:: RangeTo < uint > ) -> & mut [ T ] {
865
- self . index_mut ( & ops :: FullRange ) . index_mut ( index)
879
+ self . index_mut ( & RangeFull ) . index_mut ( index)
866
880
}
867
881
}
868
882
#[ unstable( feature = "core" ) ]
869
883
impl < ' a , T > ops:: IndexMut < ops:: RangeFrom < uint > > for IterMut < ' a , T > {
870
884
type Output = [ T ] ;
871
885
#[ inline]
872
886
fn index_mut ( & mut self , index : & ops:: RangeFrom < uint > ) -> & mut [ T ] {
873
- self . index_mut ( & ops :: FullRange ) . index_mut ( index)
887
+ self . index_mut ( & RangeFull ) . index_mut ( index)
874
888
}
875
889
}
876
890
#[ unstable( feature = "core" ) ]
877
- impl < ' a , T > ops:: IndexMut < ops :: FullRange > for IterMut < ' a , T > {
891
+ impl < ' a , T > ops:: IndexMut < RangeFull > for IterMut < ' a , T > {
878
892
type Output = [ T ] ;
879
893
#[ inline]
880
- fn index_mut ( & mut self , _index : & ops :: FullRange ) -> & mut [ T ] {
894
+ fn index_mut ( & mut self , _index : & RangeFull ) -> & mut [ T ] {
881
895
make_slice ! ( T => & mut [ T ] : self . ptr, self . end)
882
896
}
883
897
}
0 commit comments