min_max 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1111038380ae3a10c7d27e970e3f689243adaf93a0d56341f7838a8edb6e70df
4
- data.tar.gz: 9cfcbcd91ff7676988c18f3abff722a28f2ca22f1f5e78daaf55e090219db37b
3
+ metadata.gz: 80798043e91a2c00c6bda06b9cee1fe9544d9eb57c38d2d1ef41c4147614ff80
4
+ data.tar.gz: 7394b9168a389e57917780169a0a2574ea5982a4a373c67c36770bc893dfae75
5
5
  SHA512:
6
- metadata.gz: dae2da6ad5bb703b5aca311f80b9af0254c8adc746e406870600a4f343892225edc2a8dd598de08b407926a23bd053eecca900c7cf4265679af4158ac112cbe1
7
- data.tar.gz: 264f99dd737e0e0a3592c94c9007d03f5fd7cc3838dd91a9ca479bcb79faf2ea10276bce9dad98b9ccd1b2fca12a097dee90683fcf6671006f58c7f753d2c9bd
6
+ metadata.gz: 5c746c1cbdba8f6e5e752949145bd2604eefa14b75a5c5cb6b6b1a0c81eaaa75538451438cc001769336cbdf9d2e118a2c2c9a397b3d6ea00ce70f37227de576
7
+ data.tar.gz: 172aa5d4652493bcfbcd92bbad0ffbd06c72910c63ddf7c59e665ed017d300ba453d18953983c44e95fb5362e4c37ebfad5d79c4167e3736deed47ebc32e0f74
@@ -14,14 +14,14 @@ use std::collections::HashMap;
14
14
  use std::sync::{Arc, RwLock};
15
15
 
16
16
  #[derive(Debug, Clone)]
17
- struct PriorityOrderableValue(i64, usize);
17
+ struct PriorityOrderableValue(i64, i64);
18
18
 
19
19
  #[macro_use]
20
20
  extern crate lazy_static;
21
21
 
22
22
  struct MEM(
23
- RwLock<HashMap<usize, BoxValue<Value>>>,
24
- RwLock<HashMap<usize, RefCell<usize>>>,
23
+ RwLock<HashMap<i64, BoxValue<Value>>>,
24
+ RwLock<HashMap<i64, RefCell<usize>>>,
25
25
  );
26
26
 
27
27
  impl MEM {
@@ -36,13 +36,13 @@ lazy_static! {
36
36
  static ref MEMORY: MEM = MEM::new();
37
37
  }
38
38
 
39
- fn get_rb_obj(key: usize) -> Option<Value> {
39
+ fn get_rb_obj(key: i64) -> Option<Value> {
40
40
  let binding = (*MEMORY).0.read().unwrap();
41
41
  let v = binding.get(&key).unwrap();
42
42
  Some(**v)
43
43
  }
44
44
 
45
- fn pop_rb_obj(key: usize) -> Option<Value> {
45
+ fn pop_rb_obj(key: i64) -> Option<Value> {
46
46
  let binding = (*MEMORY).1.read().unwrap();
47
47
  let mut count = binding.get(&key).unwrap().borrow_mut();
48
48
  if *count == 0 {
@@ -60,7 +60,7 @@ fn pop_rb_obj(key: usize) -> Option<Value> {
60
60
  res
61
61
  }
62
62
 
63
- fn push_rb_obj(key: usize, value: Value) -> usize {
63
+ fn push_rb_obj(key: i64, value: Value) -> i64 {
64
64
  let mut binding = (*MEMORY).1.write().unwrap();
65
65
  let mut count = binding.entry(key).or_insert(RefCell::new(0)).borrow_mut();
66
66
 
@@ -133,7 +133,7 @@ impl RubyMinMaxHeap {
133
133
  let mut hp = self.heap.borrow_mut();
134
134
  value.iter().for_each(|v| {
135
135
  let priority: i64 = (*self.priority_proc).call([*v]).unwrap_or_default();
136
- let key = v.hash().unwrap().to_usize().unwrap();
136
+ let key = v.hash().unwrap().to_i64().unwrap();
137
137
  hp.push(PriorityOrderableValue(priority, push_rb_obj(key, *v)));
138
138
  });
139
139
  Ok(())
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class MinMax
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
 
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: min_max
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wouter Coppieters