Skip to content

Commit 90b3945

Browse files
committed
Renamed Option::map_default and mutate_default to map_or and mutate_or_set
1 parent 4329fc6 commit 90b3945

File tree

18 files changed

+43
-44
lines changed

18 files changed

+43
-44
lines changed

Diff for: src/libextra/dlist.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ impl<T> DList<T> {
191191
/// Remove the last Node and return it, or None if the list is empty
192192
#[inline]
193193
fn pop_back_node(&mut self) -> Option<~Node<T>> {
194-
self.list_tail.resolve().map_default(None, |tail| {
194+
self.list_tail.resolve().map_or(None, |tail| {
195195
self.length -= 1;
196196
self.list_tail = tail.prev;
197197
match tail.prev.resolve() {

Diff for: src/libextra/glob.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ pub fn glob_with(pattern: &str, options: MatchOptions) -> GlobIterator {
100100
root.push(pat_root.get_ref());
101101
}
102102

103-
let root_len = pat_root.map_default(0u, |p| p.as_vec().len());
103+
let root_len = pat_root.map_or(0u, |p| p.as_vec().len());
104104
let dir_patterns = pattern.slice_from(root_len.min(&pattern.len()))
105105
.split_terminator(is_sep).map(|s| Pattern::new(s)).to_owned_vec();
106106

@@ -314,7 +314,7 @@ impl Pattern {
314314
*/
315315
pub fn matches_path(&self, path: &Path) -> bool {
316316
// FIXME (#9639): This needs to handle non-utf8 paths
317-
path.as_str().map_default(false, |s| {
317+
path.as_str().map_or(false, |s| {
318318
self.matches(s)
319319
})
320320
}
@@ -332,7 +332,7 @@ impl Pattern {
332332
*/
333333
pub fn matches_path_with(&self, path: &Path, options: MatchOptions) -> bool {
334334
// FIXME (#9639): This needs to handle non-utf8 paths
335-
path.as_str().map_default(false, |s| {
335+
path.as_str().map_or(false, |s| {
336336
self.matches_with(s, options)
337337
})
338338
}

Diff for: src/libextra/num/bigint.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -697,7 +697,7 @@ impl BigUint {
697697
#[inline]
698698
pub fn new(v: ~[BigDigit]) -> BigUint {
699699
// omit trailing zeros
700-
let new_len = v.iter().rposition(|n| *n != 0).map_default(0, |p| p + 1);
700+
let new_len = v.iter().rposition(|n| *n != 0).map_or(0, |p| p + 1);
701701

702702
if new_len == v.len() { return BigUint { data: v }; }
703703
let mut v = v;

Diff for: src/libextra/term.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ impl<T: Writer> Terminal<T> {
122122
let inf = ti.unwrap();
123123
let nc = if inf.strings.find_equiv(&("setaf")).is_some()
124124
&& inf.strings.find_equiv(&("setab")).is_some() {
125-
inf.numbers.find_equiv(&("colors")).map_default(0, |&n| n)
125+
inf.numbers.find_equiv(&("colors")).map_or(0, |&n| n)
126126
} else { 0 };
127127

128128
return Ok(Terminal {out: out, ti: inf, num_colors: nc});
@@ -215,7 +215,7 @@ impl<T: Writer> Terminal<T> {
215215
cap = self.ti.strings.find_equiv(&("op"));
216216
}
217217
}
218-
let s = cap.map_default(Err(~"can't find terminfo capability `sgr0`"), |op| {
218+
let s = cap.map_or(Err(~"can't find terminfo capability `sgr0`"), |op| {
219219
expand(*op, [], &mut Variables::new())
220220
});
221221
if s.is_ok() {

Diff for: src/libextra/treemap.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -820,7 +820,7 @@ impl<K: TotalOrd, V> TreeNode<K, V> {
820820

821821
// Remove left horizontal link by rotating right
822822
fn skew<K: TotalOrd, V>(node: &mut ~TreeNode<K, V>) {
823-
if node.left.as_ref().map_default(false, |x| x.level == node.level) {
823+
if node.left.as_ref().map_or(false, |x| x.level == node.level) {
824824
let mut save = node.left.take_unwrap();
825825
swap(&mut node.left, &mut save.right); // save.right now None
826826
swap(node, &mut save);
@@ -831,8 +831,8 @@ fn skew<K: TotalOrd, V>(node: &mut ~TreeNode<K, V>) {
831831
// Remove dual horizontal link by rotating left and increasing level of
832832
// the parent
833833
fn split<K: TotalOrd, V>(node: &mut ~TreeNode<K, V>) {
834-
if node.right.as_ref().map_default(false,
835-
|x| x.right.as_ref().map_default(false, |y| y.level == node.level)) {
834+
if node.right.as_ref().map_or(false,
835+
|x| x.right.as_ref().map_or(false, |y| y.level == node.level)) {
836836
let mut save = node.right.take_unwrap();
837837
swap(&mut node.right, &mut save.left); // save.left now None
838838
save.level += 1;
@@ -938,8 +938,8 @@ fn remove<K: TotalOrd, V>(node: &mut Option<~TreeNode<K, V>>,
938938
};
939939

940940
if rebalance {
941-
let left_level = save.left.as_ref().map_default(0, |x| x.level);
942-
let right_level = save.right.as_ref().map_default(0, |x| x.level);
941+
let left_level = save.left.as_ref().map_or(0, |x| x.level);
942+
let right_level = save.right.as_ref().map_or(0, |x| x.level);
943943

944944
// re-balance, if necessary
945945
if left_level < save.level - 1 || right_level < save.level - 1 {

Diff for: src/librustc/middle/check_match.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -927,7 +927,7 @@ fn check_legality_of_move_bindings(cx: &MatchCheckCtxt,
927927
// check legality of moving out of the enum
928928

929929
// x @ Foo(..) is legal, but x @ Foo(y) isn't.
930-
if sub.map_default(false, |p| pat_contains_bindings(def_map, p)) {
930+
if sub.map_or(false, |p| pat_contains_bindings(def_map, p)) {
931931
tcx.sess.span_err(
932932
p.span,
933933
"cannot bind by-move with sub-bindings");

Diff for: src/librustc/middle/dead.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -300,8 +300,8 @@ impl DeadVisitor {
300300
fn symbol_is_live(&mut self, id: ast::NodeId,
301301
ctor_id: Option<ast::NodeId>) -> bool {
302302
if self.live_symbols.contains(&id)
303-
|| ctor_id.map_default(false,
304-
|ctor| self.live_symbols.contains(&ctor)) {
303+
|| ctor_id.map_or(false,
304+
|ctor| self.live_symbols.contains(&ctor)) {
305305
return true;
306306
}
307307
// If it's a type whose methods are live, then it's live, too.

Diff for: src/librustc/middle/privacy.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,7 @@ impl<'a> Visitor<()> for EmbargoVisitor<'a> {
256256
_ => true,
257257
};
258258
let tr = ty::impl_trait_ref(self.tcx, local_def(item.id));
259-
let public_trait = tr.map_default(false, |tr| {
259+
let public_trait = tr.map_or(false, |tr| {
260260
!is_local(tr.def_id) ||
261261
self.exported_items.contains(&tr.def_id.node)
262262
});

Diff for: src/librustc/middle/typeck/check/_match.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ pub fn check_pat_variant(pcx: &pat_ctxt, pat: &ast::Pat, path: &ast::Path,
165165
// See [Note-Type-error-reporting] in middle/typeck/infer/mod.rs
166166
fcx.infcx().type_error_message_str_with_expected(pat.span,
167167
|expected, actual| {
168-
expected.map_default(~"", |e| {
168+
expected.map_or(~"", |e| {
169169
format!("mismatched types: expected `{}` but found {}",
170170
e, actual)})},
171171
Some(expected), ~"a structure pattern",
@@ -214,7 +214,7 @@ pub fn check_pat_variant(pcx: &pat_ctxt, pat: &ast::Pat, path: &ast::Path,
214214
// See [Note-Type-error-reporting] in middle/typeck/infer/mod.rs
215215
fcx.infcx().type_error_message_str_with_expected(pat.span,
216216
|expected, actual| {
217-
expected.map_default(~"", |e| {
217+
expected.map_or(~"", |e| {
218218
format!("mismatched types: expected `{}` but found {}",
219219
e, actual)})},
220220
Some(expected), ~"an enum or structure pattern",
@@ -530,7 +530,7 @@ pub fn check_pat(pcx: &pat_ctxt, pat: &ast::Pat, expected: ty::t) {
530530
// See [Note-Type-error-reporting] in middle/typeck/infer/mod.rs
531531
fcx.infcx().type_error_message_str_with_expected(pat.span,
532532
|expected, actual| {
533-
expected.map_default(~"", |e| {
533+
expected.map_or(~"", |e| {
534534
format!("mismatched types: expected `{}` but found {}",
535535
e, actual)})},
536536
Some(expected), ~"a structure pattern",
@@ -578,7 +578,7 @@ pub fn check_pat(pcx: &pat_ctxt, pat: &ast::Pat, expected: ty::t) {
578578
};
579579
// See [Note-Type-error-reporting] in middle/typeck/infer/mod.rs
580580
fcx.infcx().type_error_message_str_with_expected(pat.span, |expected, actual| {
581-
expected.map_default(~"", |e| {
581+
expected.map_or(~"", |e| {
582582
format!("mismatched types: expected `{}` but found {}",
583583
e, actual)})}, Some(expected), ~"tuple", Some(&type_error));
584584
fcx.write_error(pat.id);
@@ -628,7 +628,7 @@ pub fn check_pat(pcx: &pat_ctxt, pat: &ast::Pat, expected: ty::t) {
628628
fcx.infcx().type_error_message_str_with_expected(
629629
pat.span,
630630
|expected, actual| {
631-
expected.map_default(~"", |e| {
631+
expected.map_or(~"", |e| {
632632
format!("mismatched types: expected `{}` but found {}",
633633
e, actual)})},
634634
Some(expected),
@@ -687,7 +687,7 @@ pub fn check_pointer_pat(pcx: &pat_ctxt,
687687
fcx.infcx().type_error_message_str_with_expected(
688688
span,
689689
|expected, actual| {
690-
expected.map_default(~"", |e| {
690+
expected.map_or(~"", |e| {
691691
format!("mismatched types: expected `{}` but found {}",
692692
e, actual)})},
693693
Some(expected),

Diff for: src/librustc/middle/typeck/check/vtable.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ fn lookup_vtables_for_param(vcx: &VtableContext,
141141

142142
// Substitute the values of the type parameters that may
143143
// appear in the bound.
144-
let trait_ref = substs.as_ref().map_default(trait_ref, |substs| {
144+
let trait_ref = substs.as_ref().map_or(trait_ref, |substs| {
145145
debug!("about to subst: {}, {}",
146146
trait_ref.repr(tcx), substs.repr(tcx));
147147
trait_ref.subst(tcx, *substs)
@@ -334,7 +334,7 @@ fn search_for_vtable(vcx: &VtableContext,
334334
let trait_impls = tcx.trait_impls.borrow();
335335
trait_impls.get()
336336
.find(&trait_ref.def_id)
337-
.map_default(@RefCell::new(~[]), |x| *x)
337+
.map_or(@RefCell::new(~[]), |x| *x)
338338
};
339339
// impls is the list of all impls in scope for trait_ref.
340340
let impls = impls.borrow();

Diff for: src/librustc/middle/typeck/infer/mod.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -747,13 +747,13 @@ impl InferCtxt {
747747
err: Option<&ty::type_err>) {
748748
debug!("hi! expected_ty = {:?}, actual_ty = {}", expected_ty, actual_ty);
749749

750-
let error_str = err.map_default(~"", |t_err| {
750+
let error_str = err.map_or(~"", |t_err| {
751751
format!(" ({})", ty::type_err_to_str(self.tcx, t_err))
752752
});
753753
let resolved_expected = expected_ty.map(|e_ty| {
754754
self.resolve_type_vars_if_possible(e_ty)
755755
});
756-
if !resolved_expected.map_default(false, |e| { ty::type_is_error(e) }) {
756+
if !resolved_expected.map_or(false, |e| { ty::type_is_error(e) }) {
757757
match resolved_expected {
758758
None => self.tcx.sess.span_err(sp,
759759
format!("{}{}", mk_msg(None, actual_ty), error_str)),

Diff for: src/librustpkg/tests.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ fn executable_exists(repo: &Path, short_name: &str) -> bool {
384384
fn test_executable_exists(repo: &Path, short_name: &str) -> bool {
385385
debug!("test_executable_exists: repo = {}, short_name = {}", repo.display(), short_name);
386386
let exec = built_test_in_workspace(&CrateId::new(short_name), repo);
387-
exec.map_default(false, |exec| exec.exists() && is_rwx(&exec))
387+
exec.map_or(false, |exec| exec.exists() && is_rwx(&exec))
388388
}
389389

390390
fn remove_executable_file(p: &CrateId, workspace: &Path) {
@@ -600,8 +600,8 @@ fn test_install_valid() {
600600

601601
let lib = installed_library_in_workspace(&temp_pkg_id.path, temp_workspace);
602602
debug!("lib = {:?}", lib);
603-
assert!(lib.as_ref().map_default(false, |l| l.exists()));
604-
assert!(lib.as_ref().map_default(false, |l| is_rwx(l)));
603+
assert!(lib.as_ref().map_or(false, |l| l.exists()));
604+
assert!(lib.as_ref().map_or(false, |l| is_rwx(l)));
605605

606606
// And that the test and bench executables aren't installed
607607
assert!(!target_test_in_workspace(&temp_pkg_id, temp_workspace).exists());
@@ -652,8 +652,8 @@ fn test_install_valid_external() {
652652

653653
let lib = installed_library_in_workspace(&temp_pkg_id.path, temp_workspace);
654654
debug!("lib = {:?}", lib);
655-
assert!(lib.as_ref().map_default(false, |l| l.exists()));
656-
assert!(lib.as_ref().map_default(false, |l| is_rwx(l)));
655+
assert!(lib.as_ref().map_or(false, |l| l.exists()));
656+
assert!(lib.as_ref().map_or(false, |l| is_rwx(l)));
657657

658658
// And that the test and bench executables aren't installed
659659
assert!(!target_test_in_workspace(&temp_pkg_id, temp_workspace).exists());
@@ -947,7 +947,7 @@ fn rustpkg_clean_no_arg() {
947947
assert_built_executable_exists(&tmp, "foo");
948948
command_line_test([~"clean"], &package_dir);
949949
let res = built_executable_in_workspace(&CrateId::new("foo"), &tmp);
950-
assert!(!res.as_ref().map_default(false, |m| m.exists()));
950+
assert!(!res.as_ref().map_or(false, |m| m.exists()));
951951
}
952952
953953
#[test]

Diff for: src/librustuv/addrinfo.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ impl GetAddrInfoRequest {
7272
ai_next: null(),
7373
}
7474
});
75-
let hint_ptr = hint.as_ref().map_default(null(), |x| x as *uvll::addrinfo);
75+
let hint_ptr = hint.as_ref().map_or(null(), |x| x as *uvll::addrinfo);
7676
let mut req = Request::new(uvll::UV_GETADDRINFO);
7777

7878
return match unsafe {

Diff for: src/libstd/iter.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1600,8 +1600,8 @@ impl<'a, A, T: Iterator<A>, B, U: Iterator<B>> Iterator<B> for FlatMap<'a, A, T,
16001600

16011601
#[inline]
16021602
fn size_hint(&self) -> (uint, Option<uint>) {
1603-
let (flo, fhi) = self.frontiter.as_ref().map_default((0, Some(0)), |it| it.size_hint());
1604-
let (blo, bhi) = self.backiter.as_ref().map_default((0, Some(0)), |it| it.size_hint());
1603+
let (flo, fhi) = self.frontiter.as_ref().map_or((0, Some(0)), |it| it.size_hint());
1604+
let (blo, bhi) = self.backiter.as_ref().map_or((0, Some(0)), |it| it.size_hint());
16051605
let lo = flo.saturating_add(blo);
16061606
match (self.iter.size_hint(), fhi, bhi) {
16071607
((0, Some(0)), Some(a), Some(b)) => (lo, a.checked_add(&b)),

Diff for: src/libstd/option.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ impl<T> Option<T> {
164164

165165
/// Applies a function to the contained value or returns a default.
166166
#[inline]
167-
pub fn map_default<U>(self, def: U, f: |T| -> U) -> U {
167+
pub fn map_or<U>(self, def: U, f: |T| -> U) -> U {
168168
match self { None => def, Some(t) => f(t) }
169169
}
170170

@@ -179,7 +179,7 @@ impl<T> Option<T> {
179179

180180
/// Apply a function to the contained value or set it to a default.
181181
/// Returns true if the contained value was mutated, or false if set to the default.
182-
pub fn mutate_default(&mut self, def: T, f: |T| -> T) -> bool {
182+
pub fn mutate_or_set(&mut self, def: T, f: |T| -> T) -> bool {
183183
if self.is_some() {
184184
*self = Some(f(self.take_unwrap()));
185185
true
@@ -695,12 +695,12 @@ mod tests {
695695
let mut x = Some(3i);
696696
assert!(x.mutate(|i| i+1));
697697
assert_eq!(x, Some(4i));
698-
assert!(x.mutate_default(0, |i| i+1));
698+
assert!(x.mutate_or_set(0, |i| i+1));
699699
assert_eq!(x, Some(5i));
700700
x = None;
701701
assert!(!x.mutate(|i| i+1));
702702
assert_eq!(x, None);
703-
assert!(!x.mutate_default(0i, |i| i+1));
703+
assert!(!x.mutate_or_set(0i, |i| i+1));
704704
assert_eq!(x, Some(0i));
705705
}
706706

Diff for: src/libstd/path/windows.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ impl GenericPathUnsafe for Path {
255255
// if me is verbatim, we need to pre-normalize the new path
256256
let path_ = if is_verbatim(me) { Path::normalize__(path, None) }
257257
else { None };
258-
let pathlen = path_.as_ref().map_default(path.len(), |p| p.len());
258+
let pathlen = path_.as_ref().map_or(path.len(), |p| p.len());
259259
let mut s = str::with_capacity(me.repr.len() + 1 + pathlen);
260260
s.push_str(me.repr);
261261
let plen = me.prefix_len();

Diff for: src/libsyntax/diagnostic.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -314,12 +314,11 @@ fn highlight_lines(cm: &codemap::CodeMap,
314314

315315
fn print_macro_backtrace(cm: &codemap::CodeMap, sp: Span) {
316316
for ei in sp.expn_info.iter() {
317-
let ss = ei.callee.span.as_ref().map_default(~"", |span| cm.span_to_str(*span));
317+
let ss = ei.callee.span.as_ref().map_or(~"", |span| cm.span_to_str(*span));
318318
let (pre, post) = match ei.callee.format {
319319
codemap::MacroAttribute => ("#[", "]"),
320320
codemap::MacroBang => ("", "!")
321321
};
322-
323322
print_diagnostic(ss, note,
324323
format!("in expansion of {}{}{}", pre, ei.callee.name, post));
325324
let ss = cm.span_to_str(ei.call_site);

Diff for: src/libsyntax/parse/parser.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ impl Parser {
402402
fn tokens_to_str(tokens: &[token::Token]) -> ~str {
403403
let mut i = tokens.iter();
404404
// This might be a sign we need a connect method on Iterator.
405-
let b = i.next().map_default(~"", |t| Parser::token_to_str(t));
405+
let b = i.next().map_or(~"", |t| Parser::token_to_str(t));
406406
i.fold(b, |b,a| b + "`, `" + Parser::token_to_str(a))
407407
}
408408
if edible.contains(&self.token) {
@@ -467,7 +467,7 @@ impl Parser {
467467
pub fn commit_stmt(&mut self, s: @Stmt, edible: &[token::Token], inedible: &[token::Token]) {
468468
debug!("commit_stmt {:?}", s);
469469
let _s = s; // unused, but future checks might want to inspect `s`.
470-
if self.last_token.as_ref().map_default(false, |t| is_ident_or_path(*t)) {
470+
if self.last_token.as_ref().map_or(false, |t| is_ident_or_path(*t)) {
471471
let expected = vec::append(edible.to_owned(), inedible);
472472
self.check_for_erroneous_unit_struct_expecting(expected);
473473
}

0 commit comments

Comments
 (0)