about summary refs log tree commit diff
path: root/src/libserialize
diff options
context:
space:
mode:
authorJorge Aparicio <japaricious@gmail.com>2014-12-14 23:20:43 -0500
committerJorge Aparicio <japaricious@gmail.com>2014-12-19 10:51:00 -0500
commit2df30a47e2e0ef563d9ed80cb3cc258cbea0f53a (patch)
treeecceb5c02b019d5c4359ef0cb8cf438ce545231f /src/libserialize
parent1d25271e054fdefe5e940ab4cc5e098f47c46966 (diff)
downloadrust-2df30a47e2e0ef563d9ed80cb3cc258cbea0f53a.tar.gz
rust-2df30a47e2e0ef563d9ed80cb3cc258cbea0f53a.zip
libserialize: use `#[deriving(Copy)]`
Diffstat (limited to 'src/libserialize')
-rw-r--r--src/libserialize/base64.rs12
-rw-r--r--src/libserialize/hex.rs3
-rw-r--r--src/libserialize/json.rs8
3 files changed, 7 insertions, 16 deletions
diff --git a/src/libserialize/base64.rs b/src/libserialize/base64.rs
index 8ded963b928..f1dffa55bb0 100644
--- a/src/libserialize/base64.rs
+++ b/src/libserialize/base64.rs
@@ -19,6 +19,7 @@ use std::fmt;
 use std::error;
 
 /// Available encoding character sets
+#[deriving(Copy)]
 pub enum CharacterSet {
     /// The standard character set (uses `+` and `/`)
     Standard,
@@ -26,9 +27,8 @@ pub enum CharacterSet {
     UrlSafe
 }
 
-impl Copy for CharacterSet {}
-
 /// Available newline types
+#[deriving(Copy)]
 pub enum Newline {
     /// A linefeed (i.e. Unix-style newline)
     LF,
@@ -36,9 +36,8 @@ pub enum Newline {
     CRLF
 }
 
-impl Copy for Newline {}
-
 /// Contains configuration parameters for `to_base64`.
+#[deriving(Copy)]
 pub struct Config {
     /// Character set to use
     pub char_set: CharacterSet,
@@ -50,8 +49,6 @@ pub struct Config {
     pub line_length: Option<uint>
 }
 
-impl Copy for Config {}
-
 /// Configuration for RFC 4648 standard base64 encoding
 pub static STANDARD: Config =
     Config {char_set: Standard, newline: Newline::CRLF, pad: true, line_length: None};
@@ -180,6 +177,7 @@ pub trait FromBase64 for Sized? {
 }
 
 /// Errors that can occur when decoding a base64 encoded string
+#[deriving(Copy)]
 pub enum FromBase64Error {
     /// The input contained a character not part of the base64 format
     InvalidBase64Byte(u8, uint),
@@ -187,8 +185,6 @@ pub enum FromBase64Error {
     InvalidBase64Length,
 }
 
-impl Copy for FromBase64Error {}
-
 impl fmt::Show for FromBase64Error {
     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
         match *self {
diff --git a/src/libserialize/hex.rs b/src/libserialize/hex.rs
index 22392056ddf..977a31c240b 100644
--- a/src/libserialize/hex.rs
+++ b/src/libserialize/hex.rs
@@ -61,6 +61,7 @@ pub trait FromHex for Sized? {
 }
 
 /// Errors that can occur when decoding a hex encoded string
+#[deriving(Copy)]
 pub enum FromHexError {
     /// The input contained a character not part of the hex format
     InvalidHexCharacter(char, uint),
@@ -68,8 +69,6 @@ pub enum FromHexError {
     InvalidHexLength,
 }
 
-impl Copy for FromHexError {}
-
 impl fmt::Show for FromHexError {
     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
         match *self {
diff --git a/src/libserialize/json.rs b/src/libserialize/json.rs
index 6d143329b0c..d3d1aa1d788 100644
--- a/src/libserialize/json.rs
+++ b/src/libserialize/json.rs
@@ -226,7 +226,7 @@ pub type Array = Vec<Json>;
 pub type Object = BTreeMap<string::String, Json>;
 
 /// The errors that can arise while parsing a JSON stream.
-#[deriving(Clone, PartialEq)]
+#[deriving(Clone, Copy, PartialEq)]
 pub enum ErrorCode {
     InvalidSyntax,
     InvalidNumber,
@@ -247,17 +247,13 @@ pub enum ErrorCode {
     NotUtf8,
 }
 
-impl Copy for ErrorCode {}
-
-#[deriving(Clone, PartialEq, Show)]
+#[deriving(Clone, Copy, PartialEq, Show)]
 pub enum ParserError {
     /// msg, line, col
     SyntaxError(ErrorCode, uint, uint),
     IoError(io::IoErrorKind, &'static str),
 }
 
-impl Copy for ParserError {}
-
 // Builder and Parser have the same errors.
 pub type BuilderError = ParserError;