summaryrefslogtreecommitdiff
path: root/rust/src/fileaccessor.rs
diff options
context:
space:
mode:
authorKyleMiles <krm504@nyu.edu>2021-01-21 18:35:20 +0000
committerKyleMiles <krm504@nyu.edu>2021-01-21 19:07:07 +0000
commit2fcacc55d5466a7d17bdc0b3ce988772aa6d0653 (patch)
tree9d0f2ba19117843575936f2b93e0b6a578a84dc8 /rust/src/fileaccessor.rs
parenta0da07c5c2860a5bd69921d38e438bbc1d43912f (diff)
cargo fmt and all my changes
Diffstat (limited to 'rust/src/fileaccessor.rs')
-rw-r--r--rust/src/fileaccessor.rs45
1 files changed, 33 insertions, 12 deletions
diff --git a/rust/src/fileaccessor.rs b/rust/src/fileaccessor.rs
index e3320be2..e45dec89 100644
--- a/rust/src/fileaccessor.rs
+++ b/rust/src/fileaccessor.rs
@@ -1,25 +1,37 @@
+// Copyright 2021 Vector 35 Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
use binaryninjacore_sys::BNFileAccessor;
-use std::io::{Read, Write, Seek, SeekFrom};
+use std::io::{Read, Seek, SeekFrom, Write};
use std::marker::PhantomData;
use std::slice;
-pub struct FileAccessor<'a>
-{
+pub struct FileAccessor<'a> {
pub(crate) api_object: BNFileAccessor,
_ref: PhantomData<&'a mut ()>,
}
-impl<'a> FileAccessor<'a>
-{
+impl<'a> FileAccessor<'a> {
pub fn new<F>(f: &'a mut F) -> Self
where
- F: 'a + Read + Write + Seek + Sized
+ F: 'a + Read + Write + Seek + Sized,
{
use std::os::raw::c_void;
extern "C" fn cb_get_length<F>(ctxt: *mut c_void) -> u64
where
- F: Read + Write + Seek + Sized
+ F: Read + Write + Seek + Sized,
{
let f = unsafe { &mut *(ctxt as *mut F) };
@@ -29,9 +41,14 @@ impl<'a> FileAccessor<'a>
}
}
- extern "C" fn cb_read<F>(ctxt: *mut c_void, dest: *mut c_void, offset: u64, len: usize) -> usize
+ extern "C" fn cb_read<F>(
+ ctxt: *mut c_void,
+ dest: *mut c_void,
+ offset: u64,
+ len: usize,
+ ) -> usize
where
- F: Read + Write + Seek + Sized
+ F: Read + Write + Seek + Sized,
{
let f = unsafe { &mut *(ctxt as *mut F) };
let dest = unsafe { slice::from_raw_parts_mut(dest as *mut u8, len) };
@@ -47,9 +64,14 @@ impl<'a> FileAccessor<'a>
}
}
- extern "C" fn cb_write<F>(ctxt: *mut c_void, offset: u64, src: *const c_void, len: usize) -> usize
+ extern "C" fn cb_write<F>(
+ ctxt: *mut c_void,
+ offset: u64,
+ src: *const c_void,
+ len: usize,
+ ) -> usize
where
- F: Read + Write + Seek + Sized
+ F: Read + Write + Seek + Sized,
{
let f = unsafe { &mut *(ctxt as *mut F) };
let src = unsafe { slice::from_raw_parts(src as *const u8, len) };
@@ -75,4 +97,3 @@ impl<'a> FileAccessor<'a>
}
}
}
-