Skip to content

Commit 6fc9257

Browse files
author
Jorge Aparicio
committed
serialize: fix fallout
1 parent 4bfaa93 commit 6fc9257

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

src/libserialize/json.rs

+25
Original file line numberDiff line numberDiff line change
@@ -1123,12 +1123,25 @@ impl Json {
11231123
}
11241124
}
11251125

1126+
// NOTE(stage0): remove impl after a snapshot
1127+
#[cfg(stage0)]
11261128
impl<'a> ops::Index<&'a str, Json> for Json {
11271129
fn index(&self, idx: & &str) -> &Json {
11281130
self.find(*idx).unwrap()
11291131
}
11301132
}
11311133

1134+
#[cfg(not(stage0))] // NOTE(stage0): remove cfg after a snapshot
1135+
impl<'a> ops::Index<&'a str> for Json {
1136+
type Output = Json;
1137+
1138+
fn index(&self, idx: & &str) -> &Json {
1139+
self.find(*idx).unwrap()
1140+
}
1141+
}
1142+
1143+
// NOTE(stage0): remove impl after a snapshot
1144+
#[cfg(stage0)]
11321145
impl ops::Index<uint, Json> for Json {
11331146
fn index<'a>(&'a self, idx: &uint) -> &'a Json {
11341147
match self {
@@ -1138,6 +1151,18 @@ impl ops::Index<uint, Json> for Json {
11381151
}
11391152
}
11401153

1154+
#[cfg(not(stage0))] // NOTE(stage0): remove cfg after a snapshot
1155+
impl ops::Index<uint> for Json {
1156+
type Output = Json;
1157+
1158+
fn index<'a>(&'a self, idx: &uint) -> &'a Json {
1159+
match self {
1160+
&Json::Array(ref v) => v.index(idx),
1161+
_ => panic!("can only index Json with uint if it is an array")
1162+
}
1163+
}
1164+
}
1165+
11411166
/// The output of the streaming parser.
11421167
#[deriving(PartialEq, Clone, Show)]
11431168
pub enum JsonEvent {

0 commit comments

Comments
 (0)