rt: Remove rust_refcount.h
This commit is contained in:
parent
cb89afc64e
commit
8861ba6159
@ -1,31 +0,0 @@
|
||||
// Copyright 2012 The Rust Project Developers. See the COPYRIGHT
|
||||
// file at the top-level directory of this distribution and at
|
||||
// http://rust-lang.org/COPYRIGHT.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
|
||||
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
|
||||
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
|
||||
// option. This file may not be copied, modified, or distributed
|
||||
// except according to those terms.
|
||||
|
||||
|
||||
#ifndef RUST_REFCOUNT_H
|
||||
#define RUST_REFCOUNT_H
|
||||
|
||||
#include "sync/sync.h"
|
||||
|
||||
// Refcounting defines
|
||||
typedef unsigned long ref_cnt_t;
|
||||
|
||||
#define RUST_ATOMIC_REFCOUNT() \
|
||||
private: \
|
||||
intptr_t ref_count; \
|
||||
public: \
|
||||
void ref() { \
|
||||
intptr_t old = sync::increment(ref_count); \
|
||||
assert(old > 0); \
|
||||
} \
|
||||
void deref() { if(0 == sync::decrement(ref_count)) { delete_this(); } } \
|
||||
intptr_t get_ref_count() { return sync::read(ref_count); }
|
||||
|
||||
#endif
|
@ -13,7 +13,6 @@
|
||||
#define RUST_TYPE_H
|
||||
|
||||
#include "rust_globals.h"
|
||||
#include "rust_refcount.h"
|
||||
|
||||
struct rust_opaque_box;
|
||||
|
||||
@ -28,6 +27,8 @@ struct type_desc;
|
||||
typedef void CDECL (glue_fn)(void *,
|
||||
void *);
|
||||
|
||||
typedef unsigned long ref_cnt_t;
|
||||
|
||||
// Corresponds to the boxed data in the @ region. The body follows the
|
||||
// header; you can obtain a ptr via box_body() below.
|
||||
struct rust_opaque_box {
|
||||
|
Loading…
Reference in New Issue
Block a user