diff options
Diffstat (limited to 'src/libstd/ops.rs')
| -rw-r--r-- | src/libstd/ops.rs | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/src/libstd/ops.rs b/src/libstd/ops.rs new file mode 100644 index 00000000000..47ff45be687 --- /dev/null +++ b/src/libstd/ops.rs @@ -0,0 +1,81 @@ +// Copyright 2012 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +//! Traits for the built-in operators + +#[lang="drop"] +pub trait Drop { + fn finalize(&self); // FIXME(#4332): Rename to "drop"? --pcwalton +} + +#[lang="add"] +pub trait Add<RHS,Result> { + fn add(&self, rhs: &RHS) -> Result; +} + +#[lang="sub"] +pub trait Sub<RHS,Result> { + fn sub(&self, rhs: &RHS) -> Result; +} + +#[lang="mul"] +pub trait Mul<RHS,Result> { + fn mul(&self, rhs: &RHS) -> Result; +} + +#[lang="div"] +pub trait Div<RHS,Result> { + fn div(&self, rhs: &RHS) -> Result; +} + +#[lang="rem"] +pub trait Rem<RHS,Result> { + fn rem(&self, rhs: &RHS) -> Result; +} + +#[lang="neg"] +pub trait Neg<Result> { + fn neg(&self) -> Result; +} + +#[lang="not"] +pub trait Not<Result> { + fn not(&self) -> Result; +} + +#[lang="bitand"] +pub trait BitAnd<RHS,Result> { + fn bitand(&self, rhs: &RHS) -> Result; +} + +#[lang="bitor"] +pub trait BitOr<RHS,Result> { + fn bitor(&self, rhs: &RHS) -> Result; +} + +#[lang="bitxor"] +pub trait BitXor<RHS,Result> { + fn bitxor(&self, rhs: &RHS) -> Result; +} + +#[lang="shl"] +pub trait Shl<RHS,Result> { + fn shl(&self, rhs: &RHS) -> Result; +} + +#[lang="shr"] +pub trait Shr<RHS,Result> { + fn shr(&self, rhs: &RHS) -> Result; +} + +#[lang="index"] +pub trait Index<Index,Result> { + fn index(&self, index: &Index) -> Result; +} |
