summaryrefslogtreecommitdiffstats
path: root/src/file
diff options
context:
space:
mode:
authorJascha <Jascha-N@users.noreply.github.com>2017-06-23 14:12:47 +0200
committerJascha <Jascha-N@users.noreply.github.com>2017-06-23 14:12:47 +0200
commit6c1d3807560dd2d177096118f8cce03933511685 (patch)
treecadd5bdf6f9aaa4397b9310f0de1e84782c6abc9 /src/file
parentf4fad94a58c2eef5e1e49b4f2b150eac0efbd360 (diff)
Make boxed errors Send + Sync
Diffstat (limited to 'src/file')
-rw-r--r--src/file/format/json.rs2
-rw-r--r--src/file/format/mod.rs2
-rw-r--r--src/file/format/toml.rs2
-rw-r--r--src/file/format/yaml.rs2
-rw-r--r--src/file/source/file.rs4
-rw-r--r--src/file/source/mod.rs2
-rw-r--r--src/file/source/string.rs2
7 files changed, 8 insertions, 8 deletions
diff --git a/src/file/format/json.rs b/src/file/format/json.rs
index ed6c787..ead99f8 100644
--- a/src/file/format/json.rs
+++ b/src/file/format/json.rs
@@ -4,7 +4,7 @@ use std::collections::HashMap;
use std::error::Error;
use value::{Value, ValueKind};
-pub fn parse(uri: Option<&String>, text: &str) -> Result<HashMap<String, Value>, Box<Error>> {
+pub fn parse(uri: Option<&String>, text: &str) -> Result<HashMap<String, Value>, Box<Error + Send + Sync>> {
// Parse a JSON object value from the text
// TODO: Have a proper error fire if the root of a file is ever not a Table
let value = from_json_value(uri, &serde_json::from_str(text)?);
diff --git a/src/file/format/mod.rs b/src/file/format/mod.rs
index b3cf279..5aa1acb 100644
--- a/src/file/format/mod.rs
+++ b/src/file/format/mod.rs
@@ -66,7 +66,7 @@ impl FileFormat {
pub fn parse(&self,
uri: Option<&String>,
text: &str)
- -> Result<HashMap<String, Value>, Box<Error>> {
+ -> Result<HashMap<String, Value>, Box<Error + Send + Sync>> {
match *self {
#[cfg(feature = "toml")]
FileFormat::Toml => toml::parse(uri, text),
diff --git a/src/file/format/toml.rs b/src/file/format/toml.rs
index cecad75..4307e48 100644
--- a/src/file/format/toml.rs
+++ b/src/file/format/toml.rs
@@ -4,7 +4,7 @@ use std::collections::{HashMap, BTreeMap};
use std::error::Error;
use value::{Value, ValueKind};
-pub fn parse(uri: Option<&String>, text: &str) -> Result<HashMap<String, Value>, Box<Error>> {
+pub fn parse(uri: Option<&String>, text: &str) -> Result<HashMap<String, Value>, Box<Error + Send + Sync>> {
// Parse a TOML value from the provided text
// TODO: Have a proper error fire if the root of a file is ever not a Table
let value = from_toml_value(uri, &toml::from_str(text)?);
diff --git a/src/file/format/yaml.rs b/src/file/format/yaml.rs
index 4040ea6..3ed1356 100644
--- a/src/file/format/yaml.rs
+++ b/src/file/format/yaml.rs
@@ -6,7 +6,7 @@ use std::collections::{BTreeMap, HashMap};
use std::mem;
use value::{Value, ValueKind};
-pub fn parse(uri: Option<&String>, text: &str) -> Result<HashMap<String, Value>, Box<Error>> {
+pub fn parse(uri: Option<&String>, text: &str) -> Result<HashMap<String, Value>, Box<Error + Send + Sync>> {
// Parse a YAML object from file
let mut docs = yaml::YamlLoader::load_from_str(text)?;
let root = match docs.len() {
diff --git a/src/file/source/file.rs b/src/file/source/file.rs
index 790933f..7bf29be 100644
--- a/src/file/source/file.rs
+++ b/src/file/source/file.rs
@@ -26,7 +26,7 @@ impl FileSourceFile {
fn find_file(&self,
format_hint: Option<FileFormat>)
- -> Result<(PathBuf, FileFormat), Box<Error>> {
+ -> Result<(PathBuf, FileFormat), Box<Error + Send + Sync>> {
// First check for an _exact_ match
let mut filename = env::current_dir()?.as_path().join(self.name.clone());
if filename.is_file() {
@@ -83,7 +83,7 @@ impl FileSourceFile {
impl FileSource for FileSourceFile {
fn resolve(&self,
format_hint: Option<FileFormat>)
- -> Result<(Option<String>, String, FileFormat), Box<Error>> {
+ -> Result<(Option<String>, String, FileFormat), Box<Error + Send + Sync>> {
// Find file
let (filename, format) = self.find_file(format_hint)?;
diff --git a/src/file/source/mod.rs b/src/file/source/mod.rs
index 67e2cf1..f164d27 100644
--- a/src/file/source/mod.rs
+++ b/src/file/source/mod.rs
@@ -11,5 +11,5 @@ use super::FileFormat;
pub trait FileSource: Debug + Clone {
fn resolve(&self,
format_hint: Option<FileFormat>)
- -> Result<(Option<String>, String, FileFormat), Box<Error>>;
+ -> Result<(Option<String>, String, FileFormat), Box<Error + Send + Sync>>;
}
diff --git a/src/file/source/string.rs b/src/file/source/string.rs
index 70101d6..5dbd1b9 100644
--- a/src/file/source/string.rs
+++ b/src/file/source/string.rs
@@ -18,7 +18,7 @@ impl<'a> From<&'a str> for FileSourceString {
impl FileSource for FileSourceString {
fn resolve(&self,
format_hint: Option<FileFormat>)
- -> Result<(Option<String>, String, FileFormat), Box<Error>> {
+ -> Result<(Option<String>, String, FileFormat), Box<Error + Send + Sync>> {
Ok((None, self.0.clone(), format_hint.expect("from_str requires a set file format")))
}
}