From 7490ed57a4baed70b36054cd7b208a61f34f447b Mon Sep 17 00:00:00 2001
From: Aurojit Panda <apanda@cs.nyu.edu>
Date: Tue, 4 Jun 2024 14:59:46 -0400
Subject: [PATCH] Fix no_alloc

---
 Cargo.lock                         | 30 ++++++++++++++++++++++++++++++
 treap_non_random/Cargo.toml        |  1 +
 treap_non_random/src/treap_node.rs |  2 ++
 3 files changed, 33 insertions(+)

diff --git a/Cargo.lock b/Cargo.lock
index ccd607c..2468066 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -8,6 +8,27 @@ version = "1.0.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
 
+[[package]]
+name = "alloc_counter"
+version = "0.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3a8c3a0a472b3a556e269be64dc65a5c013ba85e940d089367eb8c88f3fdfda9"
+dependencies = [
+ "alloc_counter_macro",
+ "pin-utils",
+]
+
+[[package]]
+name = "alloc_counter_macro"
+version = "0.0.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a52f81f9add01deacdc1fcb05ba09523a8faefdec6c3f69cb752b9fa9c22e5a"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 1.0.109",
+]
+
 [[package]]
 name = "android-tzdata"
 version = "0.1.1"
@@ -677,6 +698,12 @@ dependencies = [
  "rustc_version",
 ]
 
+[[package]]
+name = "pin-utils"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
+
 [[package]]
 name = "pkg-config"
 version = "0.3.30"
@@ -939,6 +966,9 @@ dependencies = [
 [[package]]
 name = "treap_non_random"
 version = "0.1.0-alpha.2"
+dependencies = [
+ "alloc_counter",
+]
 
 [[package]]
 name = "ttf-parser"
diff --git a/treap_non_random/Cargo.toml b/treap_non_random/Cargo.toml
index d0eb656..5da4fbc 100644
--- a/treap_non_random/Cargo.toml
+++ b/treap_non_random/Cargo.toml
@@ -8,3 +8,4 @@ repository="https://github.com/apanda/cvm"
 authors = ["Aurojit Panda <apanda@cs.nyu.edu>"]
 
 [dependencies]
+alloc_counter = "0.0.4"
diff --git a/treap_non_random/src/treap_node.rs b/treap_non_random/src/treap_node.rs
index fe779b8..18cbac4 100644
--- a/treap_non_random/src/treap_node.rs
+++ b/treap_non_random/src/treap_node.rs
@@ -4,6 +4,8 @@ use std::{
     mem,
 };
 
+use alloc_counter::no_alloc;
+
 use crate::data::Element;
 use std::convert::From;