summaryrefslogtreecommitdiff
path: root/core/shared.rs
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2019-03-14 19:17:52 -0400
committerRyan Dahl <ry@tinyclouds.org>2019-03-15 10:58:18 -0400
commit1811318097b57c136913bd95bb9e16d820cc1a1a (patch)
tree1459444a37d4ea961d1b1f1da2cd0044ed2c5ac9 /core/shared.rs
parent76c73ec61ec4271581795a2f0e3ae60072676dae (diff)
core: Behavior shouldn't be generic
We always pass around Box<[u8]>, and adding this generic is an unnecessary complication. Add deno_core_http_bench_test to test.py sharedQueue works on deno_core_http_bench
Diffstat (limited to 'core/shared.rs')
-rw-r--r--core/shared.rs49
1 files changed, 0 insertions, 49 deletions
diff --git a/core/shared.rs b/core/shared.rs
deleted file mode 100644
index 40d83db73..000000000
--- a/core/shared.rs
+++ /dev/null
@@ -1,49 +0,0 @@
-use crate::libdeno::deno_buf;
-use std::mem;
-
-// TODO this is where we abstract flatbuffers at.
-// TODO make these constants private to this file.
-const INDEX_NUM_RECORDS: usize = 0;
-const INDEX_RECORDS: usize = 1;
-pub const RECORD_OFFSET_PROMISE_ID: usize = 0;
-pub const RECORD_OFFSET_OP: usize = 1;
-pub const RECORD_OFFSET_ARG: usize = 2;
-pub const RECORD_OFFSET_RESULT: usize = 3;
-const RECORD_SIZE: usize = 4;
-const NUM_RECORDS: usize = 100;
-
-/// Represents the shared buffer between JS and Rust.
-/// Used for FFI.
-pub struct Shared(Vec<i32>);
-
-impl Shared {
- pub fn new() -> Shared {
- let mut vec = Vec::<i32>::new();
- vec.resize(INDEX_RECORDS + RECORD_SIZE * NUM_RECORDS, 0);
- Shared(vec)
- }
-
- pub fn set_record(&mut self, i: usize, off: usize, value: i32) {
- assert!(i < NUM_RECORDS);
- self.0[INDEX_RECORDS + RECORD_SIZE * i + off] = value;
- }
-
- pub fn get_record(&self, i: usize, off: usize) -> i32 {
- assert!(i < NUM_RECORDS);
- return self.0[INDEX_RECORDS + RECORD_SIZE * i + off];
- }
-
- pub fn set_num_records(&mut self, num_records: i32) {
- self.0[INDEX_NUM_RECORDS] = num_records;
- }
-
- pub fn get_num_records(&self) -> i32 {
- return self.0[INDEX_NUM_RECORDS];
- }
-
- pub fn as_deno_buf(&mut self) -> deno_buf {
- let ptr = self.0.as_mut_ptr() as *mut u8;
- let len = mem::size_of::<i32>() * self.0.len();
- unsafe { deno_buf::from_raw_parts(ptr, len) }
- }
-}