extra: move arena to libarena
In line with the dissolution of libextra - #8784 - moves arena to its own library libarena. Changes based on PR #11787. Updates .gitignore to ignore doc/arena.
This commit is contained in:
parent
edfb546e4b
commit
4d0d3da9e4
12 changed files with 26 additions and 16 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -74,6 +74,7 @@ src/.DS_Store
|
||||||
/doc/html
|
/doc/html
|
||||||
/doc/latex
|
/doc/latex
|
||||||
/doc/std
|
/doc/std
|
||||||
|
/doc/arena
|
||||||
/doc/extra
|
/doc/extra
|
||||||
/doc/flate
|
/doc/flate
|
||||||
/doc/green
|
/doc/green
|
||||||
|
|
|
@ -37,6 +37,7 @@ li {list-style-type: none; }
|
||||||
* [The Rust parser, `libsyntax`](syntax/index.html)
|
* [The Rust parser, `libsyntax`](syntax/index.html)
|
||||||
* [The Rust compiler, `librustc`](rustc/index.html)
|
* [The Rust compiler, `librustc`](rustc/index.html)
|
||||||
|
|
||||||
|
* [The `arena` allocation library](arena/index.html)
|
||||||
* [The `flate` compression library](flate/index.html)
|
* [The `flate` compression library](flate/index.html)
|
||||||
|
|
||||||
# Tooling
|
# Tooling
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
# automatically generated for all stage/host/target combinations.
|
# automatically generated for all stage/host/target combinations.
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
TARGET_CRATES := std extra green rustuv native flate
|
TARGET_CRATES := std extra green rustuv native flate arena
|
||||||
HOST_CRATES := syntax rustc rustdoc rustpkg
|
HOST_CRATES := syntax rustc rustdoc rustpkg
|
||||||
CRATES := $(TARGET_CRATES) $(HOST_CRATES)
|
CRATES := $(TARGET_CRATES) $(HOST_CRATES)
|
||||||
TOOLS := compiletest rustpkg rustdoc rustc
|
TOOLS := compiletest rustpkg rustdoc rustc
|
||||||
|
@ -60,10 +60,11 @@ DEPS_green := std
|
||||||
DEPS_rustuv := std native:uv native:uv_support
|
DEPS_rustuv := std native:uv native:uv_support
|
||||||
DEPS_native := std
|
DEPS_native := std
|
||||||
DEPS_syntax := std extra
|
DEPS_syntax := std extra
|
||||||
DEPS_rustc := syntax native:rustllvm flate
|
DEPS_rustc := syntax native:rustllvm flate arena
|
||||||
DEPS_rustdoc := rustc native:sundown
|
DEPS_rustdoc := rustc native:sundown
|
||||||
DEPS_rustpkg := rustc
|
DEPS_rustpkg := rustc
|
||||||
DEPS_flate := std native:miniz
|
DEPS_flate := std native:miniz
|
||||||
|
DEPS_arena := std extra
|
||||||
|
|
||||||
TOOL_DEPS_compiletest := extra green rustuv
|
TOOL_DEPS_compiletest := extra green rustuv
|
||||||
TOOL_DEPS_rustpkg := rustpkg green rustuv
|
TOOL_DEPS_rustpkg := rustpkg green rustuv
|
||||||
|
|
|
@ -15,10 +15,17 @@
|
||||||
//! of individual objects while the arena itself is still alive. The benefit
|
//! of individual objects while the arena itself is still alive. The benefit
|
||||||
//! of an arena is very fast allocation; just a pointer bump.
|
//! of an arena is very fast allocation; just a pointer bump.
|
||||||
|
|
||||||
|
#[crate_id = "arena#0.10-pre"];
|
||||||
|
#[crate_type = "rlib"];
|
||||||
|
#[crate_type = "dylib"];
|
||||||
|
#[license = "MIT/ASL2"];
|
||||||
#[allow(missing_doc)];
|
#[allow(missing_doc)];
|
||||||
|
#[feature(managed_boxes)];
|
||||||
|
|
||||||
use list::{List, Cons, Nil};
|
extern mod extra;
|
||||||
use list;
|
|
||||||
|
use extra::list::{List, Cons, Nil};
|
||||||
|
use extra::list;
|
||||||
|
|
||||||
use std::at_vec;
|
use std::at_vec;
|
||||||
use std::cast::{transmute, transmute_mut, transmute_mut_region};
|
use std::cast::{transmute, transmute_mut, transmute_mut_region};
|
||||||
|
@ -493,7 +500,7 @@ impl<T> Drop for TypedArena<T> {
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod test {
|
mod test {
|
||||||
use super::{Arena, TypedArena};
|
use super::{Arena, TypedArena};
|
||||||
use test::BenchHarness;
|
use extra::test::BenchHarness;
|
||||||
|
|
||||||
struct Point {
|
struct Point {
|
||||||
x: int,
|
x: int,
|
|
@ -70,7 +70,6 @@ pub mod tempfile;
|
||||||
pub mod glob;
|
pub mod glob;
|
||||||
pub mod term;
|
pub mod term;
|
||||||
pub mod time;
|
pub mod time;
|
||||||
pub mod arena;
|
|
||||||
pub mod base64;
|
pub mod base64;
|
||||||
pub mod workcache;
|
pub mod workcache;
|
||||||
pub mod enum_set;
|
pub mod enum_set;
|
||||||
|
|
|
@ -31,6 +31,7 @@ This API is completely unstable and subject to change.
|
||||||
|
|
||||||
extern mod extra;
|
extern mod extra;
|
||||||
extern mod flate;
|
extern mod flate;
|
||||||
|
extern mod arena;
|
||||||
extern mod syntax;
|
extern mod syntax;
|
||||||
|
|
||||||
use back::link;
|
use back::link;
|
||||||
|
|
|
@ -68,7 +68,7 @@ use util::common::indenter;
|
||||||
use util::ppaux::{Repr, ty_to_str};
|
use util::ppaux::{Repr, ty_to_str};
|
||||||
use util::sha2::Sha256;
|
use util::sha2::Sha256;
|
||||||
|
|
||||||
use extra::arena::TypedArena;
|
use arena::TypedArena;
|
||||||
use extra::time;
|
use extra::time;
|
||||||
use std::c_str::ToCStr;
|
use std::c_str::ToCStr;
|
||||||
use std::cell::{Cell, RefCell};
|
use std::cell::{Cell, RefCell};
|
||||||
|
|
|
@ -31,7 +31,7 @@ use middle::typeck;
|
||||||
use util::ppaux::Repr;
|
use util::ppaux::Repr;
|
||||||
|
|
||||||
|
|
||||||
use extra::arena::TypedArena;
|
use arena::TypedArena;
|
||||||
use std::c_str::ToCStr;
|
use std::c_str::ToCStr;
|
||||||
use std::cast::transmute;
|
use std::cast::transmute;
|
||||||
use std::cast;
|
use std::cast;
|
||||||
|
|
|
@ -193,8 +193,8 @@ represents the "variance transform" as defined in the paper:
|
||||||
*/
|
*/
|
||||||
|
|
||||||
use std::hashmap::HashMap;
|
use std::hashmap::HashMap;
|
||||||
use extra::arena;
|
use arena;
|
||||||
use extra::arena::Arena;
|
use arena::Arena;
|
||||||
use middle::ty;
|
use middle::ty;
|
||||||
use std::vec;
|
use std::vec;
|
||||||
use syntax::ast;
|
use syntax::ast;
|
||||||
|
|
|
@ -9,10 +9,11 @@
|
||||||
// except according to those terms.
|
// except according to those terms.
|
||||||
|
|
||||||
extern mod extra;
|
extern mod extra;
|
||||||
|
extern mod arena;
|
||||||
|
|
||||||
use std::iter::range_step;
|
use std::iter::range_step;
|
||||||
use extra::future::Future;
|
use extra::future::Future;
|
||||||
use extra::arena::TypedArena;
|
use arena::TypedArena;
|
||||||
|
|
||||||
enum Tree<'a> {
|
enum Tree<'a> {
|
||||||
Nil,
|
Nil,
|
||||||
|
|
|
@ -10,8 +10,8 @@
|
||||||
// option. This file may not be copied, modified, or distributed
|
// option. This file may not be copied, modified, or distributed
|
||||||
// except according to those terms.
|
// except according to those terms.
|
||||||
|
|
||||||
extern mod extra;
|
extern mod arena;
|
||||||
use extra::arena::Arena;
|
use arena::Arena;
|
||||||
|
|
||||||
pub fn main() {
|
pub fn main() {
|
||||||
let mut arena = Arena::new();
|
let mut arena = Arena::new();
|
||||||
|
|
|
@ -16,10 +16,9 @@
|
||||||
// - Multiple lifetime parameters
|
// - Multiple lifetime parameters
|
||||||
// - Arenas
|
// - Arenas
|
||||||
|
|
||||||
extern mod extra;
|
extern mod arena;
|
||||||
|
|
||||||
use extra::arena;
|
use arena::Arena;
|
||||||
use extra::arena::Arena;
|
|
||||||
use std::hashmap::HashMap;
|
use std::hashmap::HashMap;
|
||||||
use std::cast;
|
use std::cast;
|
||||||
use std::libc;
|
use std::libc;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue