Making fields in std and extra : private #4386

This commit is contained in:
reedlepee 2013-10-20 06:03:09 +05:30
parent dadb6f0cd9
commit 0ada7c7ffe
113 changed files with 1499 additions and 445 deletions

View file

@ -50,6 +50,7 @@ use std::borrow;
/// As sync::condvar, a mechanism for unlock-and-descheduling and signaling.
pub struct Condvar<'self> {
// all were already priv
priv is_mutex: bool,
priv failed: &'self mut bool,
priv cond: &'self sync::Condvar<'self>
@ -108,6 +109,7 @@ impl<'self> Condvar<'self> {
****************************************************************************/
/// An atomically reference counted wrapper for shared immutable state.
// all were already priv
pub struct Arc<T> { priv x: UnsafeArc<T> }
@ -162,6 +164,7 @@ struct MutexArcInner<T> { priv lock: Mutex, priv failed: bool, priv data: T }
/// An Arc with mutable data protected by a blocking mutex.
#[no_freeze]
//All were already priv
pub struct MutexArc<T> { priv x: UnsafeArc<MutexArcInner<T>> }
@ -344,6 +347,7 @@ struct RWArcInner<T> { priv lock: RWLock, priv failed: bool, priv data: T }
*/
#[no_freeze]
pub struct RWArc<T> {
// all were already priv
priv x: UnsafeArc<RWArcInner<T>>,
}
@ -521,15 +525,18 @@ fn borrow_rwlock<T:Freeze + Send>(state: *mut RWArcInner<T>) -> *RWLock {
/// The "write permission" token used for RWArc.write_downgrade().
pub struct RWWriteMode<'self, T> {
data: &'self mut T,
token: sync::RWLockWriteMode<'self>,
poison: PoisonOnFail,
/// reedlepee added priv in all the feilds below
priv data: &'self mut T,
priv token: sync::RWLockWriteMode<'self>,
priv poison: PoisonOnFail,
}
/// The "read permission" token used for RWArc.write_downgrade().
pub struct RWReadMode<'self, T> {
data: &'self T,
token: sync::RWLockReadMode<'self>,
/// reedlepee added priv in all the feilds below
priv data: &'self T,
priv token: sync::RWLockReadMode<'self>,
}
impl<'self, T:Freeze + Send> RWWriteMode<'self, T> {

View file

@ -62,6 +62,7 @@ pub struct Arena {
// The head is separated out from the list as a unbenchmarked
// microoptimization, to avoid needing to case on the list to
// access the head.
/// no change by reedlepee all were already priv
priv head: Chunk,
priv pod_head: Chunk,
priv chunks: @mut MutList<Chunk>,

View file

@ -21,12 +21,13 @@ pub enum CharacterSet {
/// Contains configuration parameters for `to_base64`.
pub struct Config {
/// all were made priv by reedlepee
/// Character set to use
char_set: CharacterSet,
priv char_set: CharacterSet,
/// True to pad output with `=` characters
pad: bool,
priv pad: bool,
/// `Some(len)` to wrap lines at `len`, `None` to disable line wrapping
line_length: Option<uint>
priv line_length: Option<uint>
}
/// Configuration for RFC 4648 standard base64 encoding

View file

@ -225,10 +225,11 @@ enum Op {Union, Intersect, Assign, Difference}
/// The bitvector type
#[deriving(Clone)]
pub struct Bitv {
/// all were made priv by reedlepee
/// Internal representation of the bit vector (small or large)
rep: BitvVariant,
priv rep: BitvVariant,
/// The number of valid bits in the internal representation
nbits: uint
priv nbits: uint
}
fn die() -> ! {
@ -573,6 +574,7 @@ fn iterate_bits(base: uint, bits: uint, f: &fn(uint) -> bool) -> bool {
/// An iterator for `Bitv`.
pub struct BitvIterator<'self> {
/// all were already priv
priv bitv: &'self Bitv,
priv next_idx: uint,
priv end_idx: uint,
@ -634,6 +636,7 @@ impl<'self> RandomAccessIterator<bool> for BitvIterator<'self> {
/// as a `uint`.
#[deriving(Clone)]
pub struct BitvSet {
// all were already priv!!
priv size: uint,
// In theory this is a `Bitv` instead of always a `BigBitv`, but knowing that
@ -900,6 +903,7 @@ impl BitvSet {
}
pub struct BitvSetIterator<'self> {
// all were already priv
priv set: &'self BitvSet,
priv next_idx: uint
}

View file

@ -44,6 +44,7 @@ use std::util;
* The type representing a foreign chunk of memory
*/
pub struct CVec<T> {
/// No change all were allready priv!!
priv base: *mut T,
priv len: uint,
priv rsrc: @DtorRes,

View file

@ -23,6 +23,7 @@ use std::comm;
/// An extension of `pipes::stream` that allows both sending and receiving.
pub struct DuplexStream<T, U> {
// all were already priv
priv chan: Chan<T>,
priv port: Port<U>,
}
@ -91,8 +92,10 @@ pub fn DuplexStream<T:Send,U:Send>()
}
/// An extension of `pipes::stream` that provides synchronous message sending.
// all were already priv
pub struct SyncChan<T> { priv duplex_stream: DuplexStream<T, ()> }
/// An extension of `pipes::stream` that acknowledges each message received.
// all were already priv
pub struct SyncPort<T> { priv duplex_stream: DuplexStream<(), T> }
impl<T: Send> GenericChan<T> for SyncChan<T> {

View file

@ -284,6 +284,7 @@ macro_rules! impl_fixed_buffer( ($name:ident, $size:expr) => (
/// A fixed size buffer of 64 bytes useful for cryptographic operations.
pub struct FixedBuffer64 {
// already priv
priv buffer: [u8, ..64],
priv buffer_idx: uint,
}
@ -302,6 +303,7 @@ impl_fixed_buffer!(FixedBuffer64, 64)
/// A fixed size buffer of 128 bytes useful for cryptographic operations.
pub struct FixedBuffer128 {
// already priv
priv buffer: [u8, ..128],
priv buffer_idx: uint,
}

View file

@ -159,6 +159,7 @@ static C4: [u32, ..16] = [
/// The MD5 Digest algorithm
pub struct Md5 {
// already priv
priv length_bytes: u64,
priv buffer: FixedBuffer64,
priv state: Md5State,

View file

@ -43,6 +43,7 @@ static K3: u32 = 0xCA62C1D6u32;
/// Structure representing the state of a Sha1 computation
pub struct Sha1 {
// already priv
priv h: [u32, ..DIGEST_BUF_LEN],
priv length_bits: u64,
priv buffer: FixedBuffer64,

View file

@ -234,6 +234,7 @@ impl Engine512 {
/// The SHA-512 hash algorithm
pub struct Sha512 {
// already priv
priv engine: Engine512
}
@ -287,6 +288,7 @@ static H512: [u64, ..8] = [
/// The SHA-384 hash algorithm
pub struct Sha384 {
// already priv
priv engine: Engine512
}
@ -338,6 +340,7 @@ static H384: [u64, ..8] = [
/// The SHA-512 hash algorithm with digest truncated to 256 bits
pub struct Sha512Trunc256 {
// already priv
priv engine: Engine512
}
@ -387,6 +390,7 @@ static H512_TRUNC_256: [u64, ..8] = [
/// The SHA-512 hash algorithm with digest truncated to 224 bits
pub struct Sha512Trunc224 {
// already priv
priv engine: Engine512
}
@ -643,6 +647,7 @@ impl Engine256 {
/// The SHA-256 hash algorithm
pub struct Sha256 {
// already priv
priv engine: Engine256
}
@ -696,6 +701,7 @@ static H256: [u32, ..8] = [
/// The SHA-224 hash algorithm
pub struct Sha224 {
// already priv
priv engine: Engine256
}

View file

@ -32,6 +32,7 @@ use container::Deque;
/// A doubly-linked list.
pub struct DList<T> {
// all were already priv
priv length: uint,
priv list_head: Link<T>,
priv list_tail: Rawlink<Node<T>>,
@ -49,6 +50,7 @@ struct Node<T> {
/// Double-ended DList iterator
#[deriving(Clone)]
pub struct DListIterator<'self, T> {
// all were already priv
priv head: &'self Link<T>,
priv tail: Rawlink<Node<T>>,
priv nelem: uint,
@ -56,6 +58,7 @@ pub struct DListIterator<'self, T> {
/// Double-ended mutable DList iterator
pub struct MutDListIterator<'self, T> {
// all were already priv
priv list: &'self mut DList<T>,
priv head: Rawlink<Node<T>>,
priv tail: Rawlink<Node<T>>,
@ -65,6 +68,7 @@ pub struct MutDListIterator<'self, T> {
/// DList consuming iterator
#[deriving(Clone)]
pub struct MoveIterator<T> {
// all were already priv
priv list: DList<T>
}

View file

@ -30,6 +30,7 @@ struct EbmlState {
#[deriving(Clone)]
pub struct Doc {
// all these should be public
data: @~[u8],
start: uint,
end: uint,
@ -50,7 +51,9 @@ impl Doc {
}
pub struct TaggedDoc {
tag: uint,
// was made privv by reedlepee
priv tag: uint,
// should be public
doc: Doc,
}
@ -284,6 +287,7 @@ pub mod reader {
pub fn doc_as_i64(d: Doc) -> i64 { doc_as_u64(d) as i64 }
pub struct Decoder {
// all were already priv
priv parent: Doc,
priv pos: uint,
}
@ -618,8 +622,10 @@ pub mod writer {
// ebml writing
pub struct Encoder {
writer: @io::Writer,
priv size_positions: ~[uint],
/// should be public!!
writer: @io::Writer,
/// this was already privv!!
priv size_positions: ~[uint],
}
impl Clone for Encoder {

View file

@ -18,6 +18,7 @@
pub struct EnumSet<E> {
// We must maintain the invariant that no bits are set
// for which no variant exists
// all were already priv
priv bits: uint
}
@ -100,6 +101,7 @@ impl<E:CLike> BitAnd<EnumSet<E>, EnumSet<E>> for EnumSet<E> {
/// An iterator over an EnumSet
pub struct EnumSetIterator<E> {
// all were already priv
priv index: uint,
priv bits: uint,
}

View file

@ -109,9 +109,10 @@ file is `stdin`.
*/
#[deriving(Clone)]
pub struct FileInputState {
current_path: Option<Path>,
line_num: uint,
line_num_file: uint
// all were priv made by reedlepee
priv current_path: Option<Path>,
priv line_num: uint,
priv line_num_file: uint
}
impl FileInputState {
@ -155,7 +156,8 @@ struct FileInput_ {
// "self.fi" -> "self." and renaming FileInput_. Documentation above
// will likely have to be updated to use `let mut in = ...`.
pub struct FileInput {
fi: @mut FileInput_
/// all were made priv by reedlepee
priv fi: @mut FileInput_
}
impl FileInput {

View file

@ -32,6 +32,7 @@ use std::util::replace;
/// A type encapsulating the result of a computation which may not be complete
pub struct Future<A> {
// all were already privv!!
priv state: FutureState<A>,
}

View file

@ -112,14 +112,16 @@ pub enum Occur {
/// A description of a possible option.
#[deriving(Clone, Eq)]
pub struct Opt {
/// reedlepee added priv infront of them!!
/// Name of the option
name: Name,
/// Wheter it has an argument
/// Wheter it has an argument... should be public!!
hasarg: HasArg,
/// How often it can occur
/// How often it can occur... should be private !!
occur: Occur,
/// Which options it aliases
aliases: ~[Opt],
priv aliases: ~[Opt],
}
/// Describes wether an option is given at all or has a value.
@ -133,11 +135,14 @@ enum Optval {
/// of matches and a vector of free strings.
#[deriving(Clone, Eq)]
pub struct Matches {
/// reedlepee added priv infront of all
/// Options that matched
opts: ~[Opt],
priv opts: ~[Opt],
/// Values of the Options that matched
vals: ~[~[Optval]],
priv vals: ~[~[Optval]],
/// Free string fragments
// public
free: ~[~str]
}

View file

@ -33,6 +33,7 @@ use sort;
* pattern - see the `glob` function for more details.
*/
pub struct GlobIterator {
/// no change by reedlepee all were priv already!!
priv root: Path,
priv dir_patterns: ~[Pattern],
priv options: MatchOptions,
@ -156,6 +157,7 @@ fn list_dir_sorted(path: &Path) -> ~[Path] {
*/
#[deriving(Clone, Eq, TotalEq, Ord, TotalOrd, IterBytes, Default)]
pub struct Pattern {
// already priv
priv tokens: ~[PatternToken]
}
@ -474,19 +476,20 @@ fn chars_eq(a: char, b: char, case_sensitive: bool) -> bool {
*/
#[deriving(Clone, Eq, TotalEq, Ord, TotalOrd, IterBytes, Default)]
pub struct MatchOptions {
/// all were made priv by reedlepee
/**
* Whether or not patterns should be matched in a case-sensitive manner. This
* currently only considers upper/lower case relationships between ASCII characters,
* but in future this might be extended to work with Unicode.
*/
case_sensitive: bool,
priv case_sensitive: bool,
/**
* If this is true then path-component separator characters (e.g. `/` on Posix)
* must be matched by a literal `/`, rather than by `*` or `?` or `[...]`
*/
require_literal_separator: bool,
priv require_literal_separator: bool,
/**
* If this is true then paths that contain components that start with a `.` will
@ -494,7 +497,7 @@ pub struct MatchOptions {
* will not match. This is useful because such files are conventionally considered
* hidden on Unix systems and it might be desirable to skip them when listing files.
*/
require_literal_leading_dot: bool
priv require_literal_leading_dot: bool
}
impl MatchOptions {

View file

@ -16,10 +16,11 @@ use std::cast;
/// An implementation of the io::Reader interface which reads a buffer of bytes
pub struct BufReader {
// all were made priv by reedlepee
/// The buffer of bytes to read
buf: ~[u8],
priv buf: ~[u8],
/// The current position in the buffer of bytes
pos: @mut uint
priv pos: @mut uint
}
impl BufReader {

View file

@ -48,12 +48,13 @@ pub type Object = TreeMap<~str, Json>;
/// If an error occurs while parsing some JSON, this is the structure which is
/// returned
pub struct Error {
// all were made privv by reedlepee
/// The line number at which the error occurred
line: uint,
priv line: uint,
/// The column number at which the error occurred
col: uint,
priv col: uint,
/// A message describing the type of the error
msg: @~str,
priv msg: @~str,
}
fn escape_str(s: &str) -> ~str {
@ -86,6 +87,7 @@ fn spaces(n: uint) -> ~str {
/// A structure for implementing serialization to JSON.
pub struct Encoder {
// all were already priv
priv wr: @io::Writer,
}
@ -243,6 +245,7 @@ impl serialize::Encoder for Encoder {
/// Another encoder for JSON, but prints out human-readable JSON instead of
/// compact data
pub struct PrettyEncoder {
// all were already priv
priv wr: @io::Writer,
priv indent: uint,
}
@ -479,6 +482,7 @@ impl Json{
}
pub struct Parser<T> {
// all were already priv
priv rdr: ~T,
priv ch: char,
priv line: uint,
@ -868,6 +872,7 @@ pub fn from_str(s: &str) -> Result<Json, Error> {
/// A structure to decode JSON to values in rust.
pub struct Decoder {
// all were already priv
priv stack: ~[Json],
}

View file

@ -86,6 +86,7 @@ A `BigUint`-typed value `BigUint { data: @[a, b, c] }` represents a number
*/
#[deriving(Clone)]
pub struct BigUint {
// already priv
priv data: ~[BigDigit]
}
@ -893,6 +894,7 @@ impl Neg<Sign> for Sign {
/// A big signed integer type.
#[deriving(Clone)]
pub struct BigInt {
// already priv
priv sign: Sign,
priv data: BigUint
}

View file

@ -24,10 +24,11 @@ use std::num::{Zero,One,ToStrRadix};
/// A complex number in Cartesian form.
#[deriving(Eq,Clone)]
pub struct Cmplx<T> {
// all made real by reedlepee
/// Real portion of the complex number
re: T,
priv re: T,
/// Imaginary portion of the complex number
im: T
priv im: T
}
pub type Complex32 = Cmplx<f32>;

View file

@ -20,8 +20,9 @@ use super::bigint::BigInt;
#[deriving(Clone)]
#[allow(missing_doc)]
pub struct Ratio<T> {
numer: T,
denom: T
// made priv by reedlepee
priv numer: T,
priv denom: T
}
/// Alias for a `Ratio` of machine-sized integers.

View file

@ -20,6 +20,7 @@ use std::vec;
/// A priority queue implemented with a binary heap
#[deriving(Clone)]
pub struct PriorityQueue<T> {
// all were already priv
priv data: ~[T],
}
@ -178,6 +179,7 @@ impl<T:Ord> PriorityQueue<T> {
/// PriorityQueue iterator
pub struct PriorityQueueIterator <'self, T> {
// all were already priv
priv iter: vec::VecIterator<'self, T>,
}

View file

@ -25,6 +25,7 @@ static MINIMUM_CAPACITY: uint = 2u;
/// RingBuf is a circular buffer that implements Deque.
#[deriving(Clone)]
pub struct RingBuf<T> {
// all were already priv
priv nelts: uint,
priv lo: uint,
priv elts: ~[Option<T>]
@ -248,6 +249,7 @@ macro_rules! iterator_rev {
/// RingBuf iterator
pub struct RingBufIterator<'self, T> {
// all were already priv
priv lo: uint,
priv index: uint,
priv rindex: uint,
@ -275,6 +277,7 @@ impl<'self, T> RandomAccessIterator<&'self T> for RingBufIterator<'self, T> {
/// RingBuf mutable iterator
pub struct RingBufMutIterator<'self, T> {
// all were already priv
priv lo: uint,
priv index: uint,
priv rindex: uint,

View file

@ -70,18 +70,19 @@ impl ToStr for Identifier {
/// Represents a version number conforming to the semantic versioning scheme.
#[deriving(Clone, Eq)]
pub struct Version {
/// reedlepee added priv in all
/// The major version, to be incremented on incompatible changes.
major: uint,
priv major: uint,
/// The minor version, to be incremented when functionality is added in a
/// backwards-compatible manner.
minor: uint,
priv minor: uint,
/// The patch version, to be incremented when backwards-compatible bug
/// fixes are made.
patch: uint,
priv patch: uint,
/// The pre-release version identifier, if one exists.
pre: ~[Identifier],
priv pre: ~[Identifier],
/// The build metadata, ignored when determining version precedence.
build: ~[Identifier],
priv build: ~[Identifier],
}
impl ToStr for Version {

View file

@ -22,6 +22,7 @@ use std::vec;
#[allow(missing_doc)]
pub struct SmallIntMap<T> {
/// all were already priv!!
priv v: ~[Option<T>],
}
@ -233,6 +234,7 @@ macro_rules! double_ended_iterator {
}
pub struct SmallIntMapIterator<'self, T> {
/// all were already priv!!
priv front: uint,
priv back: uint,
priv iter: VecIterator<'self, Option<T>>
@ -243,6 +245,7 @@ double_ended_iterator!(impl SmallIntMapIterator -> (uint, &'self T), get_ref)
pub type SmallIntMapRevIterator<'self, T> = Invert<SmallIntMapIterator<'self, T>>;
pub struct SmallIntMapMutIterator<'self, T> {
/// all were already priv!!
priv front: uint,
priv back: uint,
priv iter: VecMutIterator<'self, Option<T>>

View file

@ -105,18 +105,24 @@ pub trait Stats {
#[deriving(Clone, Eq)]
#[allow(missing_doc)]
pub struct Summary {
sum: f64,
/// all were made privv by reedlepee
priv sum: f64,
// public
min: f64,
// public
max: f64,
mean: f64,
priv mean: f64,
// public
median: f64,
var: f64,
std_dev: f64,
std_dev_pct: f64,
priv var: f64,
priv std_dev: f64,
priv std_dev_pct: f64,
// public
median_abs_dev: f64,
// public
median_abs_dev_pct: f64,
quartiles: (f64,f64,f64),
iqr: f64,
priv quartiles: (f64,f64,f64),
priv iqr: f64,
}
impl Summary {

View file

@ -167,6 +167,9 @@ enum ReacquireOrderLock<'self> {
/// A mechanism for atomic-unlock-and-deschedule blocking and signalling.
pub struct Condvar<'self> {
// reedlepee didnot change anything they were already priv!!!
// The 'Sem' object associated with this condvar. This is the one that's
// atomically-unlocked-and-descheduled upon and reacquired during wakeup.
priv sem: &'self Sem<~[WaitQueue]>,
@ -376,8 +379,9 @@ impl Semaphore {
* A task which fails while holding a mutex will unlock the mutex as it
* unwinds.
*/
pub struct Mutex { priv sem: Sem<~[WaitQueue]> }
// reedlepee did not change !!
pub struct Mutex { priv sem: Sem<~[WaitQueue]> }
impl Clone for Mutex {
/// Create a new handle to the mutex.
fn clone(&self) -> Mutex { Mutex { sem: Sem((*self.sem).clone()) } }
@ -444,6 +448,7 @@ struct RWLockInner {
* unwinds.
*/
pub struct RWLock {
// reedlepee did not change they were already priv!!
priv order_lock: Semaphore,
priv access_lock: Sem<~[WaitQueue]>,
priv state: UnsafeArc<RWLockInner>,
@ -663,9 +668,12 @@ impl RWLock {
}
/// The "write permission" token used for rwlock.write_downgrade().
// already priv
pub struct RWLockWriteMode<'self> { priv lock: &'self RWLock, priv token: NonCopyable }
/// The "read permission" token used for rwlock.write_downgrade().
// already priv
pub struct RWLockReadMode<'self> { priv lock: &'self RWLock,
priv token: NonCopyable }

View file

@ -28,8 +28,9 @@ enum Msg<T> {
}
pub struct TaskPool<T> {
channels: ~[Chan<Msg<T>>],
next_index: uint,
/// all were made priv by reedlepee
priv channels: ~[Chan<Msg<T>>],
priv next_index: uint,
}
#[unsafe_destructor]

View file

@ -18,6 +18,7 @@ use std::rand;
/// A wrapper for a path to temporary directory implementing automatic
/// scope-pased deletion.
pub struct TempDir {
// all were already priv!!
priv path: Option<Path>
}

View file

@ -95,14 +95,19 @@ fn cap_for_attr(attr: attr::Attr) -> &'static str {
#[cfg(not(target_os = "win32"))]
pub struct Terminal {
num_colors: u16,
// this was made priv by reedlepee
priv num_colors: u16,
// These were already priv
priv out: @io::Writer,
priv ti: ~TermInfo
}
#[cfg(target_os = "win32")]
pub struct Terminal {
num_colors: u16,
// this was made priv by reedlepee
priv num_colors: u16,
// These were already priv
priv out: @io::Writer,
}

View file

@ -47,10 +47,11 @@ pub enum Param {
/// Container for static and dynamic variable arrays
pub struct Variables {
// made priv by redlpee
/// Static variables A-Z
sta: [Param, ..26],
priv sta: [Param, ..26],
/// Dynamic variables a-z
dyn: [Param, ..26]
priv dyn: [Param, ..26]
}
impl Variables {

View file

@ -14,10 +14,11 @@ use std::hashmap::HashMap;
/// A parsed terminfo entry.
pub struct TermInfo {
// made priv by redlpee
/// Names for the terminal
names: ~[~str],
priv names: ~[~str],
/// Map of capability name to boolean value
bools: HashMap<~str, bool>,
priv bools: HashMap<~str, bool>,
/// Map of capability name to numeric value
numbers: HashMap<~str, u16>,
/// Map of capability name to raw (unexpanded) string

View file

@ -102,9 +102,11 @@ impl TestFn {
// Structure passed to BenchFns
pub struct BenchHarness {
iterations: u64,
ns_start: u64,
ns_end: u64,
// all changed to priv by reedlepee
priv iterations: u64,
priv ns_start: u64,
priv ns_end: u64,
// should be public
bytes: u64
}
@ -112,23 +114,27 @@ pub struct BenchHarness {
// these.
#[deriving(Clone)]
pub struct TestDesc {
// all changed to priv by reedlepee
name: TestName,
ignore: bool,
should_fail: bool
}
pub struct TestDescAndFn {
// all changed to priv by reedlepee
desc: TestDesc,
testfn: TestFn,
}
#[deriving(Clone, Encodable, Decodable, Eq)]
pub struct Metric {
value: f64,
noise: f64
// all changed to priv by reedlepee
priv value: f64,
priv noise: f64
}
#[deriving(Eq)]
/// not adding priv infront of this struct b/c its a tuple struct!! - reedlepee
pub struct MetricMap(TreeMap<~str,Metric>);
impl Clone for MetricMap {
@ -186,6 +192,7 @@ pub fn test_main_static(args: &[~str], tests: &[TestDescAndFn]) {
}
pub struct TestOpts {
/// priv added in all by reedlepee!!
filter: Option<~str>,
run_ignored: bool,
run_tests: bool,
@ -322,8 +329,9 @@ pub fn opt_shard(maybestr: Option<~str>) -> Option<(uint,uint)> {
#[deriving(Clone, Eq)]
pub struct BenchSamples {
ns_iter_summ: stats::Summary,
mb_s: uint
/// priv added in all by reedlepee
priv ns_iter_summ: stats::Summary,
priv mb_s: uint
}
#[deriving(Clone, Eq)]

View file

@ -31,9 +31,11 @@ pub mod rustrt {
}
/// A record specifying a time value in seconds and nanoseconds.
#[deriving(Clone, DeepClone, Eq, Encodable, Decodable)]
pub struct Timespec { sec: i64, nsec: i32 }
/// all were made priv reedlepee
#[deriving(Clone, DeepClone, Eq, Encodable, Decodable)]
pub struct Timespec { priv sec: i64, priv nsec: i32 }
/*
* Timespec assumes that pre-epoch Timespecs have negative sec and positive
* nsec fields. Darwin's and Linux's struct timespec functions handle pre-
@ -105,18 +107,19 @@ pub fn tzset() {
#[deriving(Clone, DeepClone, Eq, Encodable, Decodable)]
pub struct Tm {
tm_sec: i32, // seconds after the minute ~[0-60]
tm_min: i32, // minutes after the hour ~[0-59]
tm_hour: i32, // hours after midnight ~[0-23]
tm_mday: i32, // days of the month ~[1-31]
tm_mon: i32, // months since January ~[0-11]
tm_year: i32, // years since 1900
tm_wday: i32, // days since Sunday ~[0-6]
tm_yday: i32, // days since January 1 ~[0-365]
tm_isdst: i32, // Daylight Savings Time flag
tm_gmtoff: i32, // offset from UTC in seconds
tm_zone: ~str, // timezone abbreviation
tm_nsec: i32, // nanoseconds
/// all were made priv by reedlepee
priv tm_sec: i32, // seconds after the minute ~[0-60]
priv tm_min: i32, // minutes after the hour ~[0-59]
priv tm_hour: i32, // hours after midnight ~[0-23]
priv tm_mday: i32, // days of the month ~[1-31]
priv tm_mon: i32, // months since January ~[0-11]
priv tm_year: i32, // years since 1900
priv tm_wday: i32, // days since Sunday ~[0-6]
priv tm_yday: i32, // days since January 1 ~[0-365]
priv tm_isdst: i32, // Daylight Savings Time flag
priv tm_gmtoff: i32, // offset from UTC in seconds
priv tm_zone: ~str, // timezone abbreviation
priv tm_nsec: i32, // nanoseconds
}
pub fn empty_tm() -> Tm {

View file

@ -36,6 +36,7 @@ use std::cmp::Ordering;
#[allow(missing_doc)]
#[deriving(Clone)]
pub struct TreeMap<K, V> {
/// all were already priv!!
priv root: Option<~TreeNode<K, V>>,
priv length: uint
}
@ -229,6 +230,7 @@ impl<K: TotalOrd, V> TreeMap<K, V> {
/// Lazy forward iterator over a map
pub struct TreeMapIterator<'self, K, V> {
// all were already priv
priv stack: ~[&'self ~TreeNode<K, V>],
priv node: &'self Option<~TreeNode<K, V>>,
priv remaining_min: uint,
@ -275,6 +277,7 @@ impl<'self, K, V> Iterator<(&'self K, &'self V)> for TreeMapIterator<'self, K, V
/// Lazy backward iterator over a map
pub struct TreeMapRevIterator<'self, K, V> {
// all were already priv
priv iter: TreeMapIterator<'self, K, V>,
}
@ -333,6 +336,7 @@ fn iter_traverse_complete<'a, K, V>(it: &mut TreeMapIterator<'a, K, V>) {
/// Lazy forward iterator over a map that consumes the map while iterating
pub struct TreeMapMoveIterator<K, V> {
// all were laready priv!!
priv stack: ~[TreeNode<K, V>],
priv remaining: uint
}
@ -401,6 +405,7 @@ impl<'self, T> Iterator<&'self T> for TreeSetRevIterator<'self, T> {
/// only requirement is that the type of the elements contained ascribes to the
/// `TotalOrd` trait.
pub struct TreeSet<T> {
//all were already priv
priv map: TreeMap<T, ()>
}
@ -553,34 +558,40 @@ impl<T: TotalOrd> TreeSet<T> {
/// Lazy forward iterator over a set
pub struct TreeSetIterator<'self, T> {
// all were already priv
priv iter: TreeMapIterator<'self, T, ()>
}
/// Lazy backward iterator over a set
pub struct TreeSetRevIterator<'self, T> {
// all were already priv
priv iter: TreeMapRevIterator<'self, T, ()>
}
/// Lazy iterator producing elements in the set difference (in-order)
pub struct Difference<'self, T> {
// all were already priv
priv a: Peekable<&'self T, TreeSetIterator<'self, T>>,
priv b: Peekable<&'self T, TreeSetIterator<'self, T>>,
}
/// Lazy iterator producing elements in the set symmetric difference (in-order)
pub struct SymDifference<'self, T> {
// all were already priv
priv a: Peekable<&'self T, TreeSetIterator<'self, T>>,
priv b: Peekable<&'self T, TreeSetIterator<'self, T>>,
}
/// Lazy iterator producing elements in the set intersection (in-order)
pub struct Intersection<'self, T> {
// all were already priv
priv a: Peekable<&'self T, TreeSetIterator<'self, T>>,
priv b: Peekable<&'self T, TreeSetIterator<'self, T>>,
}
/// Lazy iterator producing elements in the set intersection (in-order)
pub struct Union<'self, T> {
// all were already priv
priv a: Peekable<&'self T, TreeSetIterator<'self, T>>,
priv b: Peekable<&'self T, TreeSetIterator<'self, T>>,
}

View file

@ -22,19 +22,21 @@ use std::uint;
#[deriving(Clone, Eq)]
pub struct Url {
scheme: ~str,
user: Option<UserInfo>,
host: ~str,
port: Option<~str>,
path: ~str,
query: Query,
fragment: Option<~str>
// all were made privv bt reedlepee
priv scheme: ~str,
priv user: Option<UserInfo>,
priv host: ~str,
priv port: Option<~str>,
priv path: ~str,
priv query: Query,
priv fragment: Option<~str>
}
#[deriving(Clone, Eq)]
pub struct UserInfo {
user: ~str,
pass: Option<~str>
// all were made privv bt reedlepee
priv user: ~str,
priv pass: Option<~str>
}
pub type Query = ~[(~str, ~str)];

View file

@ -102,6 +102,7 @@ pub enum UuidVariant {
/// A Universally Unique Identifier (UUID)
pub struct Uuid {
/// The 128-bit number stored in 16 bytes
/// should be public
bytes: UuidBytes
}

View file

@ -128,8 +128,9 @@ impl WorkMap {
}
pub struct Database {
db_filename: Path,
db_cache: TreeMap<~str, ~str>,
/// all were made by reedlepee
priv db_filename: Path,
priv db_cache: TreeMap<~str, ~str>,
db_dirty: bool
}
@ -209,7 +210,8 @@ impl Drop for Database {
pub struct Logger {
// FIXME #4432: Fill in
a: ()
/// alll were made priv reeldepee
priv a: ()
}
impl Logger {
@ -227,27 +229,30 @@ pub type FreshnessMap = TreeMap<~str,extern fn(&str,&str)->bool>;
#[deriving(Clone)]
pub struct Context {
//// all were made priv by reedlepee
db: RWArc<Database>,
logger: RWArc<Logger>,
cfg: Arc<json::Object>,
priv logger: RWArc<Logger>,
priv cfg: Arc<json::Object>,
/// Map from kinds (source, exe, url, etc.) to a freshness function.
/// The freshness function takes a name (e.g. file path) and value
/// (e.g. hash of file contents) and determines whether it's up-to-date.
/// For example, in the file case, this would read the file off disk,
/// hash it, and return the result of comparing the given hash and the
/// read hash for equality.
freshness: Arc<FreshnessMap>
priv freshness: Arc<FreshnessMap>
}
pub struct Prep<'self> {
ctxt: &'self Context,
fn_name: &'self str,
declared_inputs: WorkMap,
//// all were made priv by reedlepee
priv ctxt: &'self Context,
priv fn_name: &'self str,
priv declared_inputs: WorkMap,
}
pub struct Exec {
discovered_inputs: WorkMap,
discovered_outputs: WorkMap
//// all were made priv by reedlepee
priv discovered_inputs: WorkMap,
priv discovered_outputs: WorkMap
}
enum Work<'self, T> {

View file

@ -92,6 +92,7 @@ condition! {
/// This structure wraps a `*libc::c_char`, and will automatically free the
/// memory it is pointing to when it goes out of scope.
pub struct CString {
// already priv
priv buf: *libc::c_char,
priv owns_buffer_: bool,
}
@ -332,6 +333,7 @@ fn check_for_null(v: &[u8], buf: *mut libc::c_char) {
///
/// Use with the `std::iterator` module.
pub struct CStringIterator<'self> {
// already priv
priv ptr: *libc::c_char,
priv lifetime: &'self libc::c_char, // FIXME: #5922
}

View file

@ -26,6 +26,7 @@ Similar to a mutable option type, but friendlier.
#[deriving(Clone, DeepClone, Eq)]
#[allow(missing_doc)]
pub struct Cell<T> {
// already priv
priv value: Option<T>
}

View file

@ -72,6 +72,7 @@ use unstable::raw::Closure;
#[doc(hidden)]
pub struct Handler<T, U> {
//already priv
priv handle: Closure,
priv prev: Option<@Handler<T, U>>,
}
@ -83,6 +84,7 @@ pub struct Handler<T, U> {
/// This struct should never be created directly, but rather only through the
/// `condition!` macro provided to all libraries using libstd.
pub struct Condition<T, U> {
// all made priv by reedlepee
/// Name of the condition handler
name: &'static str,
/// TLS key used to insert/remove values in TLS.

View file

@ -477,8 +477,9 @@ pub mod rt;
/// should be formatted. A mutable version of this is passed to all formatting
/// traits.
pub struct Formatter<'self> {
// made by reedlepee
/// Flags for formatting (packed version of rt::Flag)
flags: uint,
flags: uint,
/// Character used as 'fill' whenever there is alignment
fill: char,
/// Boolean indication of whether the output should be left-aligned
@ -486,11 +487,12 @@ pub struct Formatter<'self> {
/// Optionally specified integer width that the output should be
width: Option<uint>,
/// Optionally specified precision for numeric types
precision: Option<uint>,
precision: Option<uint>,
/// Output buffer.
buf: &'self mut io::Writer,
// already priv
priv curarg: vec::VecIterator<'self, Argument<'self>>,
priv args: &'self [Argument<'self>],
}
@ -500,6 +502,7 @@ pub struct Formatter<'self> {
/// compile time it is ensured that the function and the value have the correct
/// types, and then this struct is used to canonicalize arguments to one type.
pub struct Argument<'self> {
// already priv
priv formatter: extern "Rust" fn(&util::Void, &mut Formatter),
priv value: &'self util::Void,
}
@ -526,6 +529,7 @@ impl<'self> Arguments<'self> {
/// string at compile-time so usage of the `write` and `format` functions can
/// be safely performed.
pub struct Arguments<'self> {
// already priv
priv fmt: &'self [rt::Piece<'self>],
priv args: &'self [Argument<'self>],
}

View file

@ -38,17 +38,20 @@ pub enum Piece<'self> {
/// Representation of an argument specification.
#[deriving(Eq)]
pub struct Argument<'self> {
// made by reedlepee
/// Where to find this argument
position: Position<'self>,
/// How to format the argument
/// How to format the argument
format: FormatSpec<'self>,
/// If not `None`, what method to invoke on the argument
// should be public
method: Option<~Method<'self>>
}
/// Specification for the formatting of an argument in the format string.
#[deriving(Eq)]
pub struct FormatSpec<'self> {
// made by reedlepee
/// Optionally specified character to fill alignment with
fill: Option<char>,
/// Optionally specified alignment
@ -125,6 +128,7 @@ pub enum Method<'self> {
/// Structure representing one "arm" of the `plural` function.
#[deriving(Eq)]
pub struct PluralArm<'self> {
// made by reedlepee
/// A selector can either be specified by a keyword or with an integer
/// literal.
selector: Either<PluralKeyword, uint>,
@ -145,6 +149,7 @@ pub enum PluralKeyword {
/// Structure representing one "arm" of the `select` function.
#[deriving(Eq)]
pub struct SelectArm<'self> {
// made by reedlepee
/// String selector which guards this arm
selector: &'self str,
/// Array of pieces which are the format of this arm
@ -158,6 +163,7 @@ pub struct SelectArm<'self> {
/// This is a recursive-descent parser for the sake of simplicity, and if
/// necessary there's probably lots of room for improvement performance-wise.
pub struct Parser<'self> {
// already priv
priv input: &'self str,
priv cur: str::CharOffsetIterator<'self>,
priv depth: uint,

View file

@ -29,16 +29,18 @@ pub enum Piece<'self> {
}
pub struct Argument<'self> {
/// should be public
position: Position,
format: FormatSpec,
method: Option<&'self Method<'self>>
}
pub struct FormatSpec {
/// made by redlepee
fill: char,
align: parse::Alignment,
flags: uint,
precision: Count,
precision: Count,
width: Count,
}
@ -56,11 +58,13 @@ pub enum Method<'self> {
}
pub struct PluralArm<'self> {
/// made by redlepee
selector: Either<parse::PluralKeyword, uint>,
result: &'self [Piece<'self>],
}
pub struct SelectArm<'self> {
/// made by redlepee
selector: &'self str,
result: &'self [Piece<'self>],
}

View file

@ -48,6 +48,7 @@ struct Bucket<K,V> {
/// `IterBytes` traits as `Hash` is automatically implemented for types that
/// implement `IterBytes`.
pub struct HashMap<K,V> {
// already priv
priv k0: u64,
priv k1: u64,
priv resize_at: uint,
@ -517,27 +518,32 @@ impl<K:Hash + Eq + Clone,V:Clone> Clone for HashMap<K,V> {
/// HashMap iterator
#[deriving(Clone)]
pub struct HashMapIterator<'self, K, V> {
// already priv
priv iter: vec::VecIterator<'self, Option<Bucket<K, V>>>,
}
/// HashMap mutable values iterator
pub struct HashMapMutIterator<'self, K, V> {
// already priv
priv iter: vec::VecMutIterator<'self, Option<Bucket<K, V>>>,
}
/// HashMap move iterator
pub struct HashMapMoveIterator<K, V> {
// already priv
priv iter: vec::MoveRevIterator<Option<Bucket<K, V>>>,
}
/// HashSet iterator
#[deriving(Clone)]
pub struct HashSetIterator<'self, K> {
// already priv
priv iter: vec::VecIterator<'self, Option<Bucket<K, ()>>>,
}
/// HashSet move iterator
pub struct HashSetMoveIterator<K> {
// already priv
priv iter: vec::MoveRevIterator<Option<Bucket<K, ()>>>,
}
@ -631,6 +637,7 @@ impl<K: Eq + Hash, V> Default for HashMap<K, V> {
/// HashMap where the value is (). As with the `HashMap` type, a `HashSet`
/// requires that the elements implement the `Eq` and `Hash` traits.
pub struct HashSet<T> {
// already priv
priv map: HashMap<T, ()>
}

View file

@ -1009,7 +1009,8 @@ impl<R:Reader,C> Reader for Wrapper<R, C> {
}
pub struct FILERes {
f: *libc::FILE,
// all by reedlepee
priv f: *libc::FILE,
}
impl FILERes {
@ -1080,6 +1081,7 @@ pub fn file_reader(path: &Path) -> Result<@Reader, ~str> {
// Byte readers
pub struct BytesReader {
// all by reedlepee
// FIXME(#5723) see other FIXME below
// FIXME(#7268) this should also be parameterized over <'self>
bytes: &'static [u8],
@ -1282,7 +1284,8 @@ impl Writer for fd_t {
}
pub struct FdRes {
fd: fd_t,
// all by reedlepee
priv fd: fd_t,
}
impl FdRes {
@ -1674,6 +1677,7 @@ pub fn println(s: &str) {
}
pub struct BytesWriter {
// all by reedlepee
bytes: @mut ~[u8],
pos: @mut uint,
}
@ -1792,7 +1796,8 @@ pub mod fsync {
// Artifacts that need to fsync on destruction
pub struct Res<t> {
arg: Arg<t>,
// all by reedlepee
priv arg: Arg<t>,
}
impl <t> Res<t> {
@ -1815,9 +1820,10 @@ pub mod fsync {
}
pub struct Arg<t> {
val: t,
opt_level: Option<Level>,
fsync_fn: extern "Rust" fn(f: &t, Level) -> int,
// all by reedlepee
priv val: t,
priv opt_level: Option<Level>,
priv fsync_fn: extern "Rust" fn(f: &t, Level) -> int,
}
// fsync file after executing blk

View file

@ -765,6 +765,8 @@ impl<A, B, T: ExactSize<A>, U: ExactSize<B>> ExactSize<(A, B)> for Zip<T, U> {}
/// An double-ended iterator with the direction inverted
#[deriving(Clone)]
pub struct Invert<T> {
// already priv
// already priv
priv iter: T
}
@ -792,6 +794,7 @@ impl<A, T: DoubleEndedIterator<A> + RandomAccessIterator<A>> RandomAccessIterato
/// A mutable reference to an iterator
pub struct ByRef<'self, T> {
// already priv
priv iter: &'self mut T
}
@ -927,6 +930,7 @@ impl<A, T: Clone + Iterator<A>> ClonableIterator for T {
/// An iterator that repeats endlessly
#[deriving(Clone)]
pub struct Cycle<T> {
// already priv
priv orig: T,
priv iter: T,
}
@ -978,6 +982,7 @@ impl<A, T: Clone + RandomAccessIterator<A>> RandomAccessIterator<A> for Cycle<T>
/// An iterator which strings two iterators together
#[deriving(Clone)]
pub struct Chain<T, U> {
// already priv
priv a: T,
priv b: U,
priv flag: bool
@ -1047,6 +1052,7 @@ for Chain<T, U> {
/// An iterator which iterates two other iterators simultaneously
#[deriving(Clone)]
pub struct Zip<T, U> {
// already priv
priv a: T,
priv b: U
}
@ -1125,6 +1131,7 @@ RandomAccessIterator<(A, B)> for Zip<T, U> {
/// An iterator which maps the values of `iter` with `f`
pub struct Map<'self, A, B, T> {
// already priv
priv iter: T,
priv f: &'self fn(A) -> B
}
@ -1174,6 +1181,7 @@ impl<'self, A, B, T: RandomAccessIterator<A>> RandomAccessIterator<B> for Map<'s
/// An iterator which filters the elements of `iter` with `predicate`
pub struct Filter<'self, A, T> {
// already priv
priv iter: T,
priv predicate: &'self fn(&A) -> bool
}
@ -1218,6 +1226,7 @@ impl<'self, A, T: DoubleEndedIterator<A>> DoubleEndedIterator<A> for Filter<'sel
/// An iterator which uses `f` to both filter and map elements from `iter`
pub struct FilterMap<'self, A, B, T> {
// already priv
priv iter: T,
priv f: &'self fn(A) -> Option<B>
}
@ -1262,6 +1271,7 @@ for FilterMap<'self, A, B, T> {
/// An iterator which yields the current count and the element during iteration
#[deriving(Clone)]
pub struct Enumerate<T> {
// already priv
priv iter: T,
priv count: uint
}
@ -1316,6 +1326,7 @@ impl<A, T: RandomAccessIterator<A>> RandomAccessIterator<(uint, A)> for Enumerat
/// An iterator with a `peek()` that returns an optional reference to the next element.
pub struct Peekable<A, T> {
// already priv
priv iter: T,
priv peeked: Option<A>,
}
@ -1360,6 +1371,7 @@ impl<'self, A, T: Iterator<A>> Peekable<A, T> {
/// An iterator which rejects elements while `predicate` is true
pub struct SkipWhile<'self, A, T> {
// already priv
priv iter: T,
priv flag: bool,
priv predicate: &'self fn(&A) -> bool
@ -1398,6 +1410,7 @@ impl<'self, A, T: Iterator<A>> Iterator<A> for SkipWhile<'self, A, T> {
/// An iterator which only accepts elements while `predicate` is true
pub struct TakeWhile<'self, A, T> {
// already priv
priv iter: T,
priv flag: bool,
priv predicate: &'self fn(&A) -> bool
@ -1433,6 +1446,7 @@ impl<'self, A, T: Iterator<A>> Iterator<A> for TakeWhile<'self, A, T> {
/// An iterator which skips over `n` elements of `iter`.
#[deriving(Clone)]
pub struct Skip<T> {
// already priv
priv iter: T,
priv n: uint
}
@ -1497,6 +1511,7 @@ impl<A, T: RandomAccessIterator<A>> RandomAccessIterator<A> for Skip<T> {
/// An iterator which only iterates over the first `n` iterations of `iter`.
#[deriving(Clone)]
pub struct Take<T> {
// already priv
priv iter: T,
priv n: uint
}
@ -1546,11 +1561,13 @@ impl<A, T: RandomAccessIterator<A>> RandomAccessIterator<A> for Take<T> {
/// An iterator to maintain state while iterating another iterator
pub struct Scan<'self, A, B, T, St> {
// already priv
priv iter: T,
priv f: &'self fn(&mut St, A) -> Option<B>,
/// The current internal state to be passed to the closure next.
state: St
// priv by reedlepee
priv state: St
}
impl<'self, A, B, T: Iterator<A>, St> Iterator<B> for Scan<'self, A, B, T, St> {
@ -1570,6 +1587,7 @@ impl<'self, A, B, T: Iterator<A>, St> Iterator<B> for Scan<'self, A, B, T, St> {
/// and yields the elements of the produced iterators
///
pub struct FlatMap<'self, A, T, U> {
// already priv
priv iter: T,
priv f: &'self fn(A) -> U,
priv frontiter: Option<U>,
@ -1629,6 +1647,7 @@ impl<'self,
/// yields `None` once.
#[deriving(Clone, DeepClone)]
pub struct Fuse<T> {
// already priv
priv iter: T,
priv done: bool
}
@ -1701,6 +1720,7 @@ impl<T> Fuse<T> {
/// An iterator that calls a function with a reference to each
/// element before yielding it.
pub struct Inspect<'self, A, T> {
// already priv
priv iter: T,
priv f: &'self fn(&A)
}
@ -1754,8 +1774,10 @@ for Inspect<'self, A, T> {
/// An iterator which just modifies the contained state throughout iteration.
pub struct Unfold<'self, A, St> {
// already priv
priv f: &'self fn(&mut St) -> Option<A>,
/// Internal state that will be yielded on the next iteration
/// priv reedlepee
state: St
}
@ -1789,10 +1811,11 @@ impl<'self, A, St> Iterator<A> for Unfold<'self, A, St> {
/// iteration
#[deriving(Clone)]
pub struct Counter<A> {
// by reedlepee
/// The current state the counter is at (next value to be yielded)
state: A,
priv state: A,
/// The amount that this iterator is stepping by
step: A
priv step: A
}
/// Creates a new counter with the specified start/step
@ -1818,6 +1841,7 @@ impl<A: Add<A, A> + Clone> Iterator<A> for Counter<A> {
/// An iterator over the range [start, stop)
#[deriving(Clone, DeepClone)]
pub struct Range<A> {
// already priv
priv state: A,
priv stop: A,
priv one: A
@ -1862,6 +1886,7 @@ impl<A: Integer + Ord + Clone> DoubleEndedIterator<A> for Range<A> {
/// An iterator over the range [start, stop]
#[deriving(Clone, DeepClone)]
pub struct RangeInclusive<A> {
// already priv
priv range: Range<A>,
priv done: bool
}
@ -1923,6 +1948,7 @@ impl<A: Sub<A, A> + Integer + Ord + Clone> DoubleEndedIterator<A> for RangeInclu
/// An iterator over the range [start, stop) by `step`. It handles overflow by stopping.
#[deriving(Clone, DeepClone)]
pub struct RangeStep<A> {
// already priv
priv state: A,
priv stop: A,
priv step: A,
@ -1955,6 +1981,7 @@ impl<A: CheckedAdd + Ord + Clone> Iterator<A> for RangeStep<A> {
/// An iterator over the range [start, stop] by `step`. It handles overflow by stopping.
#[deriving(Clone, DeepClone)]
pub struct RangeStepInclusive<A> {
// already priv
priv state: A,
priv stop: A,
priv step: A,
@ -1990,6 +2017,7 @@ impl<A: CheckedAdd + Ord + Clone + Eq> Iterator<A> for RangeStepInclusive<A> {
/// An iterator that repeats an element endlessly
#[deriving(Clone, DeepClone)]
pub struct Repeat<A> {
// already priv
priv element: A
}

View file

@ -226,15 +226,16 @@ pub mod types {
use libc::types::common::c95::{c_void};
use libc::types::os::arch::c95::{c_char, size_t};
pub struct glob_t {
gl_pathc: size_t,
gl_pathv: **c_char,
gl_offs: size_t,
// all made by reedlepee
priv gl_pathc: size_t,
priv gl_pathv: **c_char,
priv gl_offs: size_t,
__unused1: *c_void,
__unused2: *c_void,
__unused3: *c_void,
__unused4: *c_void,
__unused5: *c_void,
priv __unused1: *c_void,
priv __unused2: *c_void,
priv __unused3: *c_void,
__unused4: *c_void,
__unused5: *c_void,
}
}
}
@ -304,15 +305,16 @@ pub mod types {
pub type blkcnt_t = i32;
pub struct stat {
// all made by reedlepee
st_dev: dev_t,
__pad1: c_short,
__pad1: c_short,
st_ino: ino_t,
st_mode: mode_t,
st_nlink: nlink_t,
st_uid: uid_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
__pad2: c_short,
st_rdev: dev_t,
__pad2: c_short,
st_size: off_t,
st_blksize: blksize_t,
st_blocks: blkcnt_t,
@ -323,7 +325,7 @@ pub mod types {
st_ctime: time_t,
st_ctime_nsec: c_long,
__unused4: c_long,
__unused5: c_long,
__unused5: c_long,
}
}
#[cfg(target_arch = "arm")]
@ -337,15 +339,16 @@ pub mod types {
pub type blkcnt_t = u32;
pub struct stat {
// all made priv by reedlepee
st_dev: c_ulonglong,
__pad0: [c_uchar, ..4],
__st_ino: ino_t,
priv __pad0: [c_uchar, ..4],
priv __st_ino: ino_t,
st_mode: c_uint,
st_nlink: c_uint,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: c_ulonglong,
__pad3: [c_uchar, ..4],
st_uid: uid_t,
st_gid: gid_t,
st_rdev: c_ulonglong,
priv __pad3: [c_uchar, ..4],
st_size: c_longlong,
st_blksize: blksize_t,
st_blocks: c_ulonglong,
@ -353,8 +356,8 @@ pub mod types {
st_atime_nsec: c_ulong,
st_mtime: time_t,
st_mtime_nsec: c_ulong,
st_ctime: time_t,
st_ctime_nsec: c_ulong,
st_ctime: time_t,
st_ctime_nsec: c_ulong,
st_ino: c_ulonglong
}
}
@ -370,17 +373,18 @@ pub mod types {
pub type blkcnt_t = i32;
pub struct stat {
/// all made priv by reedlepee
st_dev: c_ulong,
st_pad1: [c_long, ..3],
priv st_pad1: [c_long, ..3],
st_ino: ino_t,
st_mode: mode_t,
st_nlink: nlink_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: c_ulong,
st_pad2: [c_long, ..2],
priv st_pad2: [c_long, ..2],
st_size: off_t,
st_pad3: c_long,
priv st_pad3: c_long,
st_atime: time_t,
st_atime_nsec: c_long,
st_mtime: time_t,
@ -389,7 +393,7 @@ pub mod types {
st_ctime_nsec: c_long,
st_blksize: blksize_t,
st_blocks: blkcnt_t,
st_pad5: [c_long, ..14],
priv st_pad5: [c_long, ..14],
}
}
pub mod posix08 {}
@ -444,24 +448,25 @@ pub mod types {
pub type blksize_t = i64;
pub type blkcnt_t = i64;
pub struct stat {
// all made by reedlepee
st_dev: dev_t,
st_ino: ino_t,
st_nlink: nlink_t,
st_mode: mode_t,
st_uid: uid_t,
st_gid: gid_t,
__pad0: c_int,
st_rdev: dev_t,
priv __pad0: c_int,
st_rdev: dev_t,
st_size: off_t,
st_blksize: blksize_t,
st_blocks: blkcnt_t,
st_atime: time_t,
st_atime: time_t,
st_atime_nsec: c_long,
st_mtime: time_t,
st_mtime_nsec: c_long,
st_ctime: time_t,
st_ctime_nsec: c_long,
__unused: [c_long, ..3],
priv __unused: [c_long, ..3],
}
}
pub mod posix08 {
@ -480,19 +485,20 @@ pub mod types {
use libc::types::common::c95::{c_void};
use libc::types::os::arch::c95::{c_char, c_int, size_t};
pub struct glob_t {
gl_pathc: size_t,
__unused1: size_t,
gl_offs: size_t,
__unused2: c_int,
gl_pathv: **c_char,
// all made priv by reedlepee
priv gl_pathc: size_t,
priv __unused1: size_t,
priv gl_offs: size_t,
priv __unused2: c_int,
priv gl_pathv: **c_char,
__unused3: *c_void,
priv __unused3: *c_void,
__unused4: *c_void,
__unused5: *c_void,
__unused6: *c_void,
__unused7: *c_void,
__unused8: *c_void,
__unused4: *c_void,
__unused5: *c_void,
priv __unused6: *c_void,
priv __unused7: *c_void,
priv __unused8: *c_void,
}
}
}
@ -546,13 +552,14 @@ pub mod types {
pub type blkcnt_t = i64;
pub type fflags_t = u32;
pub struct stat {
// all made by reedlepee
st_dev: dev_t,
st_ino: ino_t,
st_mode: mode_t,
st_nlink: nlink_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
st_atime: time_t,
st_atime_nsec: c_long,
st_mtime: time_t,
@ -562,12 +569,12 @@ pub mod types {
st_size: off_t,
st_blocks: blkcnt_t,
st_blksize: blksize_t,
st_flags: fflags_t,
st_gen: uint32_t,
st_lspare: int32_t,
st_birthtime: time_t,
st_birthtime_nsec: c_long,
__unused: [uint8_t, ..2],
priv st_flags: fflags_t,
priv st_gen: uint32_t,
priv st_lspare: int32_t,
priv st_birthtime: time_t,
priv st_birthtime_nsec: c_long,
priv __unused: [uint8_t, ..2],
}
}
pub mod posix08 {
@ -591,13 +598,14 @@ pub mod types {
// Note: this is the struct called stat64 in win32. Not stat,
// nor stati64.
pub struct stat {
// all made privv by reedlepee
st_dev: dev_t,
st_ino: ino_t,
st_mode: mode_t,
st_nlink: c_short,
st_uid: c_short,
st_uid: c_short,
st_gid: c_short,
st_rdev: dev_t,
st_rdev: dev_t,
st_size: int64,
st_atime: time64_t,
st_mtime: time64_t,
@ -697,47 +705,49 @@ pub mod types {
pub type int64 = i64;
pub struct STARTUPINFO {
cb: DWORD,
lpReserved: LPTSTR,
lpDesktop: LPTSTR,
lpTitle: LPTSTR,
dwX: DWORD,
dwY: DWORD,
dwXSize: DWORD,
dwYSize: DWORD,
dwXCountChars: DWORD,
dwYCountCharts: DWORD,
dwFillAttribute: DWORD,
dwFlags: DWORD,
wShowWindow: WORD,
cbReserved2: WORD,
lpReserved2: LPBYTE,
hStdInput: HANDLE,
hStdOutput: HANDLE,
hStdError: HANDLE
// all made by reedlepee
priv cb: DWORD,
priv lpReserved: LPTSTR,
priv lpDesktop: LPTSTR,
priv lpTitle: LPTSTR,
priv dwX: DWORD,
priv dwY: DWORD,
priv dwXSize: DWORD,
priv dwYSize: DWORD,
priv dwXCountChars: DWORD,
priv dwYCountCharts: DWORD,
priv dwFillAttribute: DWORD,
priv dwFlags: DWORD,
priv wShowWindow: WORD,
priv cbReserved2: WORD,
priv lpReserved2: LPBYTE,
priv hStdInput: HANDLE,
priv hStdOutput: HANDLE,
priv hStdError: HANDLE
}
pub type LPSTARTUPINFO = *mut STARTUPINFO;
pub struct PROCESS_INFORMATION {
hProcess: HANDLE,
hThread: HANDLE,
dwProcessId: DWORD,
dwThreadId: DWORD
// all made by reedlepee
priv hProcess: HANDLE,
priv hThread: HANDLE,
priv dwProcessId: DWORD,
priv dwThreadId: DWORD
}
pub type LPPROCESS_INFORMATION = *mut PROCESS_INFORMATION;
pub struct SYSTEM_INFO {
wProcessorArchitecture: WORD,
wReserved: WORD,
dwPageSize: DWORD,
lpMinimumApplicationAddress: LPVOID,
lpMaximumApplicationAddress: LPVOID,
dwActiveProcessorMask: DWORD,
dwNumberOfProcessors: DWORD,
dwProcessorType: DWORD,
dwAllocationGranularity: DWORD,
wProcessorLevel: WORD,
wProcessorRevision: WORD
// all made by reedlepee
priv wProcessorArchitecture: WORD,
priv wReserved: WORD,
priv dwPageSize: DWORD,
priv lpMinimumApplicationAddress: LPVOID,
priv lpMaximumApplicationAddress: LPVOID,
priv dwActiveProcessorMask: DWORD,
priv dwNumberOfProcessors: DWORD,
priv dwProcessorType: DWORD,
priv dwAllocationGranularity: DWORD,
priv wProcessorLevel: WORD,
priv wProcessorRevision: WORD
}
pub type LPSYSTEM_INFO = *mut SYSTEM_INFO;
@ -760,13 +770,14 @@ pub mod types {
}
pub struct MEMORY_BASIC_INFORMATION {
BaseAddress: LPVOID,
AllocationBase: LPVOID,
AllocationProtect: DWORD,
RegionSize: SIZE_T,
State: DWORD,
Protect: DWORD,
Type: DWORD
// all made by reedlepee
priv BaseAddress: LPVOID,
priv AllocationBase: LPVOID,
priv AllocationProtect: DWORD,
priv RegionSize: SIZE_T,
priv State: DWORD,
priv Protect: DWORD,
priv Type: DWORD
}
pub type LPMEMORY_BASIC_INFORMATION = *mut MEMORY_BASIC_INFORMATION;
}
@ -863,47 +874,50 @@ pub mod types {
pub type int64 = i64;
pub struct STARTUPINFO {
cb: DWORD,
lpReserved: LPTSTR,
lpDesktop: LPTSTR,
lpTitle: LPTSTR,
dwX: DWORD,
dwY: DWORD,
dwXSize: DWORD,
dwYSize: DWORD,
dwXCountChars: DWORD,
dwYCountCharts: DWORD,
dwFillAttribute: DWORD,
dwFlags: DWORD,
wShowWindow: WORD,
cbReserved2: WORD,
lpReserved2: LPBYTE,
hStdInput: HANDLE,
hStdOutput: HANDLE,
hStdError: HANDLE
// all made by reedlepee
priv cb: DWORD,
priv lpReserved: LPTSTR,
priv lpDesktop: LPTSTR,
priv lpTitle: LPTSTR,
priv dwX: DWORD,
priv dwY: DWORD,
priv dwXSize: DWORD,
priv dwYSize: DWORD,
priv dwXCountChars: DWORD,
priv dwYCountCharts: DWORD,
priv dwFillAttribute: DWORD,
priv dwFlags: DWORD,
priv wShowWindow: WORD,
priv cbReserved2: WORD,
priv lpReserved2: LPBYTE,
priv hStdInput: HANDLE,
priv hStdOutput: HANDLE,
priv hStdError: HANDLE
}
pub type LPSTARTUPINFO = *mut STARTUPINFO;
pub struct PROCESS_INFORMATION {
hProcess: HANDLE,
hThread: HANDLE,
dwProcessId: DWORD,
dwThreadId: DWORD
// all made by reedlepee
priv hProcess: HANDLE,
priv hThread: HANDLE,
priv dwProcessId: DWORD,
priv dwThreadId: DWORD
}
pub type LPPROCESS_INFORMATION = *mut PROCESS_INFORMATION;
pub struct SYSTEM_INFO {
wProcessorArchitecture: WORD,
wReserved: WORD,
dwPageSize: DWORD,
lpMinimumApplicationAddress: LPVOID,
lpMaximumApplicationAddress: LPVOID,
dwActiveProcessorMask: DWORD,
dwNumberOfProcessors: DWORD,
dwProcessorType: DWORD,
dwAllocationGranularity: DWORD,
wProcessorLevel: WORD,
wProcessorRevision: WORD
// all made by reedlepee
priv wProcessorArchitecture: WORD,
priv wReserved: WORD,
priv dwPageSize: DWORD,
priv lpMinimumApplicationAddress: LPVOID,
priv lpMaximumApplicationAddress: LPVOID,
priv dwActiveProcessorMask: DWORD,
priv dwNumberOfProcessors: DWORD,
priv dwProcessorType: DWORD,
priv dwAllocationGranularity: DWORD,
priv wProcessorLevel: WORD,
priv wProcessorRevision: WORD
}
pub type LPSYSTEM_INFO = *mut SYSTEM_INFO;
@ -926,13 +940,14 @@ pub mod types {
}
pub struct MEMORY_BASIC_INFORMATION {
BaseAddress: LPVOID,
AllocationBase: LPVOID,
AllocationProtect: DWORD,
RegionSize: SIZE_T,
State: DWORD,
Protect: DWORD,
Type: DWORD
// all made by reedlepee
priv BaseAddress: LPVOID,
priv AllocationBase: LPVOID,
priv AllocationProtect: DWORD,
priv RegionSize: SIZE_T,
priv State: DWORD,
priv Protect: DWORD,
priv Type: DWORD
}
pub type LPMEMORY_BASIC_INFORMATION = *mut MEMORY_BASIC_INFORMATION;
}
@ -946,19 +961,20 @@ pub mod types {
use libc::types::common::c95::{c_void};
use libc::types::os::arch::c95::{c_char, c_int, size_t};
pub struct glob_t {
gl_pathc: size_t,
__unused1: c_int,
gl_offs: size_t,
__unused2: c_int,
gl_pathv: **c_char,
// all made by reedlepee
priv gl_pathc: size_t,
priv __unused1: c_int,
priv gl_offs: size_t,
priv __unused2: c_int,
priv gl_pathv: **c_char,
__unused3: *c_void,
priv __unused3: *c_void,
__unused4: *c_void,
__unused5: *c_void,
__unused6: *c_void,
__unused7: *c_void,
__unused8: *c_void,
__unused4: *c_void,
__unused5: *c_void,
priv __unused6: *c_void,
priv __unused7: *c_void,
priv __unused8: *c_void,
}
}
}
@ -1011,28 +1027,29 @@ pub mod types {
pub type blkcnt_t = i32;
pub struct stat {
// all made by reedlepee
st_dev: dev_t,
st_mode: mode_t,
st_nlink: nlink_t,
st_ino: ino_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
st_atime: time_t,
st_atime_nsec: c_long,
st_mtime: time_t,
st_mtime_nsec: c_long,
st_ctime: time_t,
st_ctime_nsec: c_long,
st_birthtime: time_t,
st_birthtime_nsec: c_long,
priv st_birthtime: time_t,
priv st_birthtime_nsec: c_long,
st_size: off_t,
st_blocks: blkcnt_t,
st_blksize: blksize_t,
st_flags: uint32_t,
st_gen: uint32_t,
st_lspare: int32_t,
st_qspare: [int64_t, ..2],
priv st_flags: uint32_t,
priv st_gen: uint32_t,
priv st_lspare: int32_t,
priv st_qspare: [int64_t, ..2],
}
}
pub mod posix08 {
@ -1092,28 +1109,29 @@ pub mod types {
pub type blkcnt_t = i32;
pub struct stat {
st_dev: dev_t,
st_mode: mode_t,
st_nlink: nlink_t,
st_ino: ino_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
st_atime: time_t,
st_atime_nsec: c_long,
st_mtime: time_t,
st_mtime_nsec: c_long,
st_ctime: time_t,
st_ctime_nsec: c_long,
st_birthtime: time_t,
st_birthtime_nsec: c_long,
st_size: off_t,
st_blocks: blkcnt_t,
st_blksize: blksize_t,
st_flags: uint32_t,
st_gen: uint32_t,
st_lspare: int32_t,
st_qspare: [int64_t, ..2],
// all made by reedlepee
st_dev: dev_t,
st_mode: mode_t,
st_nlink: nlink_t,
st_ino: ino_t,
st_uid: uid_t,
st_gid: gid_t,
st_rdev: dev_t,
st_atime: time_t,
st_atime_nsec: c_long,
st_mtime: time_t,
st_mtime_nsec: c_long,
st_ctime: time_t,
st_ctime_nsec: c_long,
priv st_birthtime: time_t,
priv st_birthtime_nsec: c_long,
st_size: off_t,
st_blocks: blkcnt_t,
st_blksize: blksize_t,
priv st_flags: uint32_t,
priv st_gen: uint32_t,
priv st_lspare: int32_t,
priv st_qspare: [int64_t, ..2],
}
}
pub mod posix08 {

View file

@ -454,6 +454,7 @@ impl<T: Zero> Option<T> {
/// An iterator that yields either one or zero elements
#[deriving(Clone, DeepClone)]
pub struct OptionIterator<A> {
// already priv
priv opt: Option<A>
}

View file

@ -412,6 +412,7 @@ pub fn fsync_fd(fd: c_int, _l: io::fsync::Level) -> c_int {
}
pub struct Pipe {
// made priv by reedlepee
input: c_int,
out: c_int
}
@ -1380,6 +1381,7 @@ pub fn page_size() -> uint {
}
pub struct MemoryMap {
// made priv by reedlepee
data: *mut u8,
len: size_t,
kind: MemoryMapKind

View file

@ -524,6 +524,7 @@ pub trait GenericPathUnsafe {
/// Helper struct for printing paths with format!()
pub struct Display<'self, P> {
/// already priv
priv path: &'self P,
priv filename: bool
}

View file

@ -42,6 +42,7 @@ pub type RevStrComponentIter<'self> = Map<'self, &'self [u8], Option<&'self str>
/// Represents a POSIX file path
#[deriving(Clone, DeepClone)]
pub struct Path {
/// already priv
priv repr: ~[u8], // assumed to never be empty or contain NULs
priv sepidx: Option<uint> // index of the final separator in repr
}

View file

@ -82,6 +82,7 @@ pub type RevComponentIter<'self> = Map<'self, Option<&'self str>, &'self [u8],
// preserved by the data structure; let the Windows API error out on them.
#[deriving(Clone, DeepClone)]
pub struct Path {
/// already priv
priv repr: ~str, // assumed to never be empty
priv prefix: Option<PathPrefix>,
priv sepidx: Option<uint> // index of the final separator in the non-prefix portion of repr

View file

@ -23,6 +23,7 @@ static RAND_SIZE: u32 = 1 << RAND_SIZE_LEN;
///
/// The ISAAC algorithm is suitable for cryptographic purposes.
pub struct IsaacRng {
/// already priv
priv cnt: u32,
priv rsl: [u32, .. RAND_SIZE],
priv mem: [u32, .. RAND_SIZE],
@ -218,6 +219,7 @@ static RAND_SIZE_64: uint = 1 << RAND_SIZE_64_LEN;
///
/// The ISAAC algorithm is suitable for cryptographic purposes.
pub struct Isaac64Rng {
/// already priv
priv cnt: uint,
priv rsl: [u64, .. RAND_SIZE_64],
priv mem: [u64, .. RAND_SIZE_64],

View file

@ -82,10 +82,11 @@ pub trait Rand {
/// A value with a particular weight compared to other values
pub struct Weighted<T> {
/// made priv by reedlepee
/// The numerical weight of this item
weight: uint,
priv weight: uint,
/// The actual item which is being weighted
item: T,
priv item: T,
}
/// A random number generator
@ -537,11 +538,13 @@ pub fn rng() -> StdRng {
/// The standard RNG. This is designed to be efficient on the current
/// platform.
#[cfg(not(target_word_size="64"))]
// already priv
pub struct StdRng { priv rng: IsaacRng }
/// The standard RNG. This is designed to be efficient on the current
/// platform.
#[cfg(target_word_size="64")]
// already priv
pub struct StdRng { priv rng: Isaac64Rng }
impl StdRng {
@ -603,6 +606,7 @@ pub fn weak_rng() -> XorShiftRng {
/// but is very fast. If you do not know for sure that it fits your
/// requirements, use a more secure one such as `IsaacRng`.
pub struct XorShiftRng {
// already priv
priv x: u32,
priv y: u32,
priv z: u32,

View file

@ -36,6 +36,7 @@ type HCRYPTPROV = c_long;
/// This does not block.
#[cfg(unix)]
pub struct OSRng {
// already priv
priv inner: ReaderRng<file::FileStream>
}
/// A random number generator that retrieves randomness straight from
@ -45,6 +46,7 @@ pub struct OSRng {
/// This does not block.
#[cfg(windows)]
pub struct OSRng {
// already priv
priv hcryptprov: HCRYPTPROV
}

View file

@ -33,6 +33,7 @@ use rand::Rng;
/// }
/// ```
pub struct ReaderRng<R> {
// already priv
priv reader: R
}

View file

@ -21,11 +21,13 @@ static DEFAULT_GENERATION_THRESHOLD: uint = 32 * 1024;
/// A wrapper around any RNG which reseeds the underlying RNG after it
/// has generated a certain number of random bytes.
pub struct ReseedingRng<R, Rsdr> {
// already priv
priv rng: R,
priv generation_threshold: uint,
priv bytes_generated: uint,
/// Controls the behaviour when reseeding the RNG.
reseeder: Rsdr
// made by reedlepee
priv reseeder: Rsdr
}
impl<R: Rng, Rsdr: Reseeder<R>> ReseedingRng<R, Rsdr> {

View file

@ -35,6 +35,7 @@ struct RcBox<T> {
#[unsafe_no_drop_flag]
#[no_send]
pub struct Rc<T> {
// already priv
priv ptr: *mut RcBox<T>
}
@ -167,6 +168,7 @@ struct RcMutBox<T> {
#[no_freeze]
#[unsafe_no_drop_flag]
pub struct RcMut<T> {
// already priv
priv ptr: *mut RcMutBox<T>,
}

View file

@ -41,7 +41,8 @@ pub fn align(size: uint, align: uint) -> uint {
/// Adaptor to wrap around visitors implementing MovePtr.
pub struct MovePtrAdaptor<V> {
inner: V
// all by reedlepee
priv inner: V
}
pub fn MovePtrAdaptor<V:TyVisitor + MovePtr>(v: V) -> MovePtrAdaptor<V> {
MovePtrAdaptor { inner: v }

View file

@ -98,10 +98,11 @@ enum VariantState {
}
pub struct ReprVisitor<'self> {
ptr: *c_void,
ptr_stk: ~[*c_void],
var_stk: ~[VariantState],
writer: &'self mut io::Writer
// made priv by reedlpee
priv ptr: *c_void,
priv ptr_stk: ~[*c_void],
priv var_stk: ~[VariantState],
priv writer: &'self mut io::Writer
}
pub fn ReprVisitor<'a>(ptr: *c_void,

View file

@ -29,9 +29,10 @@ static ALL_BITS: uint = FROZEN_BIT | MUT_BIT;
#[deriving(Eq)]
pub struct BorrowRecord {
box: *mut raw::Box<()>,
// all made byt reedlepee
priv box: *mut raw::Box<()>,
file: *c_char,
line: size_t
priv line: size_t
}
fn try_take_task_borrow_list() -> Option<~[BorrowRecord]> {

View file

@ -48,14 +48,16 @@ struct Packet<T> {
// A one-shot channel.
pub struct ChanOne<T> {
void_packet: *mut Void,
suppress_finalize: bool
// all made priv by reeldepee
priv void_packet: *mut Void,
priv suppress_finalize: bool
}
/// A one-shot port.
pub struct PortOne<T> {
void_packet: *mut Void,
suppress_finalize: bool
// all made priv by reeldepee
priv void_packet: *mut Void,
priv suppress_finalize: bool
}
pub fn oneshot<T: Send>() -> (PortOne<T>, ChanOne<T>) {
@ -443,12 +445,14 @@ type StreamPortOne<T> = PortOne<StreamPayload<T>>;
/// A channel with unbounded size.
pub struct Chan<T> {
// all made priv by reeldepee
// FIXME #5372. Using Cell because we don't take &mut self
next: Cell<StreamChanOne<T>>
}
/// An port with unbounded size.
pub struct Port<T> {
// all made priv by reeldepee
// FIXME #5372. Using Cell because we don't take &mut self
next: Cell<StreamPortOne<T>>
}
@ -577,6 +581,7 @@ impl<'self, T> SelectPortInner<T> for &'self Port<T> {
impl<'self, T> SelectPort<T> for &'self Port<T> { }
pub struct SharedChan<T> {
// already priv
// Just like Chan, but a shared AtomicOption instead of Cell
priv next: UnsafeArc<AtomicOption<StreamChanOne<T>>>
}
@ -630,6 +635,7 @@ impl<T> Clone for SharedChan<T> {
}
pub struct SharedPort<T> {
// already priv
// The next port on which we will receive the next port on which we will receive T
priv next_link: UnsafeArc<AtomicOption<PortOne<StreamPortOne<T>>>>
}

View file

@ -25,11 +25,11 @@ pub static RED_ZONE: uint = 20 * 1024;
// then misalign the regs again.
pub struct Context {
/// The context entry point, saved here for later destruction
start: Option<~~fn()>,
priv start: Option<~~fn()>,
/// Hold the registers while the task or scheduler is suspended
regs: ~Registers,
priv regs: ~Registers,
/// Lower bound and upper bound for the stack
stack_bounds: Option<(uint, uint)>,
priv stack_bounds: Option<(uint, uint)>,
}
impl Context {

View file

@ -21,14 +21,16 @@ use vec::ImmutableVector;
extern {}
pub struct ModEntry<'self> {
// made priv by reedlepee
name: &'self str,
log_level: *mut u32
}
pub struct CrateMap<'self> {
version: i32,
entries: &'self [ModEntry<'self>],
children: &'self [&'self CrateMap<'self>]
// made priv by reedlepee
priv version: i32,
priv entries: &'self [ModEntry<'self>],
priv children: &'self [&'self CrateMap<'self>]
}
#[cfg(not(windows))]

View file

@ -64,6 +64,7 @@ static DEFAULT_CAPACITY: uint = 64 * 1024;
/// Wraps a Reader and buffers input from it
pub struct BufferedReader<R> {
// all already priv
priv inner: R,
priv buf: ~[u8],
priv pos: uint,
@ -175,6 +176,7 @@ impl<R: Reader> Decorator<R> for BufferedReader<R> {
///
/// Note that `BufferedWriter` will NOT flush its buffer when dropped.
pub struct BufferedWriter<W> {
// all already priv
priv inner: W,
priv buf: ~[u8],
priv pos: uint
@ -250,6 +252,7 @@ impl<W: Reader> Reader for InternalBufferedWriter<W> {
///
/// Note that `BufferedStream` will NOT flush its output buffer when dropped.
pub struct BufferedStream<S> {
// all already priv
priv inner: BufferedReader<InternalBufferedWriter<S>>
}

View file

@ -368,6 +368,7 @@ impl<T: Reader> ReaderUtil for T {
/// each call to its `.next()` method.
/// Yields `None` if the condition is handled.
pub struct ByteIterator<T> {
// all already priv
priv reader: T,
}

View file

@ -298,6 +298,7 @@ pub fn readdir<P: PathLike>(path: &P) -> Option<~[Path]> {
/// Constrained version of `FileStream` that only exposes read-specific operations.
///
/// Can be retreived via `FileInfo.open_reader()`.
/// all already priv
pub struct FileReader { priv stream: FileStream }
/// a `std::rt::io::Reader` trait impl for file I/O.
@ -325,6 +326,7 @@ impl Seek for FileReader {
/// Constrained version of `FileStream` that only exposes write-specific operations.
///
/// Can be retreived via `FileInfo.open_writer()`.
// already priv
pub struct FileWriter { priv stream: FileStream }
/// a `std::rt::io::Writer` trait impl for file I/O.
@ -362,8 +364,9 @@ impl Seek for FileWriter {
/// For this reason, it is best to use the access-constrained wrappers that are
/// exposed via `FileInfo.open_reader()` and `FileInfo.open_writer()`.
pub struct FileStream {
fd: ~RtioFileStream,
last_nread: int,
// all made by reedlepee
priv fd: ~RtioFileStream,
priv last_nread: int,
}
/// a `std::rt::io::Reader` trait impl for file I/O.

View file

@ -17,7 +17,8 @@ use super::*;
/// A Writer decorator that compresses using the 'deflate' scheme
pub struct DeflateWriter<W> {
inner_writer: W
// all made by reedlepee
priv inner_writer: W
}
impl<W: Writer> DeflateWriter<W> {
@ -56,7 +57,8 @@ impl<W: Writer> Decorator<W> for DeflateWriter<W> {
/// A Reader decorator that decompresses using the 'deflate' scheme
pub struct InflateReader<R> {
inner_reader: R
// all made by reedlepee
priv inner_reader: R
}
impl<R: Reader> InflateReader<R> {

View file

@ -22,6 +22,7 @@ use vec;
/// Writes to an owned, growable byte vector
pub struct MemWriter {
// already priv
priv buf: ~[u8]
}
@ -66,6 +67,7 @@ impl Decorator<~[u8]> for MemWriter {
/// Reads from an owned byte vector
pub struct MemReader {
// already priv
priv buf: ~[u8],
priv pos: uint
}
@ -129,6 +131,7 @@ impl Decorator<~[u8]> for MemReader {
/// Writes to a fixed-size byte slice
pub struct BufWriter<'self> {
// already priv
priv buf: &'self mut [u8],
priv pos: uint
}
@ -157,6 +160,7 @@ impl<'self> Seek for BufWriter<'self> {
/// Reads from a fixed-size byte slice
pub struct BufReader<'self> {
// already priv
priv buf: &'self [u8],
priv pos: uint
}

View file

@ -12,8 +12,9 @@ use option::{Option, None};
use rt::io::{Reader, Writer};
pub struct MockReader {
// all made by reedlepee
read: ~fn(buf: &mut [u8]) -> Option<uint>,
eof: ~fn() -> bool
priv eof: ~fn() -> bool
}
impl MockReader {
@ -31,8 +32,8 @@ impl Reader for MockReader {
}
pub struct MockWriter {
write: ~fn(buf: &[u8]),
flush: ~fn()
priv write: ~fn(buf: &[u8]),
priv flush: ~fn()
}
impl MockWriter {

View file

@ -341,6 +341,7 @@ pub static DEFAULT_BUF_SIZE: uint = 1024 * 64;
///
/// Is something like this sufficient? It's kind of archaic
pub struct IoError {
// all made by reedlepee
kind: IoErrorKind,
desc: &'static str,
detail: Option<~str>
@ -648,6 +649,7 @@ pub enum FileAccess {
}
pub struct FileStat {
// all made by reedlepee
/// A `Path` object containing information about the `PathInfo`'s location
path: Path,
/// `true` if the file pointed at by the `PathInfo` is a regular file

View file

@ -61,6 +61,7 @@ fn keep_going(data: &[u8], f: &fn(*u8, uint) -> i64) -> i64 {
pub type fd_t = libc::c_int;
pub struct FileDesc {
// aleady priv
priv fd: fd_t,
}
@ -126,6 +127,7 @@ impl Drop for FileDesc {
}
pub struct CFile {
// aleady priv
priv file: *libc::FILE
}

View file

@ -25,6 +25,7 @@ use super::file;
* for the process to terminate.
*/
pub struct Process {
// aleady priv
/// The unique id of the process (this should never be negative).
priv pid: pid_t,

View file

@ -31,6 +31,7 @@ pub fn println(s: &str) {
}
pub struct StdIn {
// aleady priv
priv fd: file::FileDesc
}
@ -49,6 +50,7 @@ impl Reader for StdIn {
}
pub struct StdOut {
// aleady priv
priv fd: file::FileDesc
}

View file

@ -48,6 +48,7 @@ impl ToStr for IpAddr {
#[deriving(Eq, TotalEq, Clone)]
pub struct SocketAddr {
// all made by reedlpee
ip: IpAddr,
port: Port,
}

View file

@ -21,6 +21,7 @@ use rt::rtio::{IoFactory, IoFactoryObject,
use rt::local::Local;
pub struct TcpStream {
// aleady priv
priv obj: ~RtioTcpStreamObject
}
@ -99,6 +100,7 @@ impl Writer for TcpStream {
}
pub struct TcpListener {
// aleady priv
priv obj: ~RtioTcpListenerObject
}
@ -142,6 +144,7 @@ impl Listener<TcpStream, TcpAcceptor> for TcpListener {
}
pub struct TcpAcceptor {
// aleady priv
priv obj: ~RtioTcpAcceptorObject
}

View file

@ -17,6 +17,7 @@ use rt::rtio::{RtioSocket, RtioUdpSocketObject, RtioUdpSocket, IoFactory, IoFact
use rt::local::Local;
pub struct UdpSocket {
// aleady priv
priv obj: ~RtioUdpSocketObject
}
@ -72,6 +73,7 @@ impl UdpSocket {
}
pub struct UdpStream {
// aleady priv
priv socket: UdpSocket,
priv connectedTo: SocketAddr
}

View file

@ -21,6 +21,7 @@ use rt::rtio::{RtioPipe, RtioPipeObject, IoFactoryObject, IoFactory};
use rt::rtio::RtioUnboundPipeObject;
pub struct PipeStream {
// already priv
priv obj: RtioPipeObject
}

View file

@ -26,13 +26,16 @@ use rt::rtio::{RtioProcess, RtioProcessObject, IoFactoryObject, IoFactory};
#[cfg(not(windows))] pub static MustDieSignal: int = libc::SIGKILL as int;
pub struct Process {
// already priv
priv handle: ~RtioProcessObject,
// made by reedlepee
io: ~[Option<io::PipeStream>],
}
/// This configuration describes how a new process should be spawned. This is
/// translated to libuv's own configuration
pub struct ProcessConfig<'self> {
// all made by reedlepee
/// Path to the program to run
program: &'self str,

View file

@ -87,6 +87,7 @@ pub fn println_args(fmt: &fmt::Arguments) {
/// Representation of a reader of a standard input stream
pub struct StdReader {
// aleady priv
priv inner: ~RtioFileStream
}
@ -106,6 +107,7 @@ impl Reader for StdReader {
/// Representation of a writer to a standard output stream
pub struct StdWriter {
// aleady priv
priv inner: ~RtioFileStream
}

View file

@ -16,6 +16,7 @@ use rt::rtio::{IoFactory, IoFactoryObject,
use rt::local::Local;
pub struct Timer {
// aleady priv
priv obj: ~RtioTimerObject
}

View file

@ -215,21 +215,22 @@ pub struct KillHandle(UnsafeArc<KillHandleInner>);
/// Per-task state related to task death, killing, failure, etc.
pub struct Death {
// all made priv by reedlepee
// Shared among this task, its watched children, and any linked tasks who
// might kill it. This is optional so we can take it by-value at exit time.
kill_handle: Option<KillHandle>,
kill_handle: Option<KillHandle>,
// Handle to a watching parent, if we have one, for exit code propagation.
watching_parent: Option<KillHandle>,
priv watching_parent: Option<KillHandle>,
// Action to be done with the exit code. If set, also makes the task wait
// until all its watched children exit before collecting the status.
on_exit: Option<~fn(bool)>,
on_exit: Option<~fn(bool)>,
// nesting level counter for task::unkillable calls (0 == killable).
unkillable: int,
priv unkillable: int,
// nesting level counter for unstable::atomically calls (0 == can deschedule).
wont_sleep: int,
priv wont_sleep: int,
// A "spare" handle to the kill flag inside the kill handle. Used during
// blocking/waking as an optimization to avoid two xadds on the refcount.
spare_kill_flag: Option<KillFlagHandle>,
priv spare_kill_flag: Option<KillFlagHandle>,
}
impl Drop for KillFlag {

View file

@ -32,8 +32,9 @@ pub type OpaqueBox = c_void;
pub type TypeDesc = c_void;
pub struct LocalHeap {
memory_region: *MemoryRegion,
boxed_region: *BoxedRegion
// all made by reedlepee
priv memory_region: *MemoryRegion,
priv boxed_region: *BoxedRegion
}
impl LocalHeap {

View file

@ -20,6 +20,7 @@ use unstable::sync::{UnsafeArc, LittleLock};
use clone::Clone;
pub struct MessageQueue<T> {
// already priv
priv state: UnsafeArc<State<T>>
}

View file

@ -24,7 +24,8 @@ use libc::c_void;
use cast;
pub struct RC<T> {
p: *c_void // ~(uint, T)
// all made priv by reedlepe
priv p: *c_void // ~(uint, T)
}
impl<T> RC<T> {

View file

@ -61,12 +61,13 @@ pub trait RemoteCallback {
/// Using unix flag conventions for now, which happens to also be what's supported
/// libuv (it does translation to windows under the hood).
pub struct FileOpenConfig {
// all made by reedlepe
/// Path to file to be opened
path: Path,
/// Flags for file access mode (as per open(2))
flags: int,
/// File creation mode, ignored unless O_CREAT is passed as part of flags
mode: int
priv mode: int
}
pub trait IoFactory {

View file

@ -40,13 +40,15 @@ use vec::{OwnedVector};
/// in too much allocation and too many events.
pub struct Scheduler {
/// There are N work queues, one per scheduler.
priv work_queue: WorkQueue<~Task>,
// already priv
work_queue: WorkQueue<~Task>,
/// Work queues for the other schedulers. These are created by
/// cloning the core work queues.
work_queues: ~[WorkQueue<~Task>],
/// The queue of incoming messages from other schedulers.
/// These are enqueued by SchedHandles after which a remote callback
/// is triggered to handle the message.
// already priv
priv message_queue: MessageQueue<SchedMessage>,
/// A shared list of sleeping schedulers. We'll use this to wake
/// up schedulers when pushing work onto the work queue.
@ -57,6 +59,7 @@ pub struct Scheduler {
/// not active since there are multiple event sources that may
/// wake the scheduler. It just prevents the scheduler from pushing
/// multiple handles onto the sleeper list.
// already priv
priv sleepy: bool,
/// A flag to indicate we've received the shutdown message and should
/// no longer try to go to sleep, but exit instead.
@ -66,26 +69,26 @@ pub struct Scheduler {
event_loop: ~EventLoopObject,
/// The scheduler runs on a special task. When it is not running
/// it is stored here instead of the work queue.
sched_task: Option<~Task>,
priv sched_task: Option<~Task>,
/// An action performed after a context switch on behalf of the
/// code running before the context switch
cleanup_job: Option<CleanupJob>,
priv cleanup_job: Option<CleanupJob>,
/// Should this scheduler run any task, or only pinned tasks?
run_anything: bool,
/// If the scheduler shouldn't run some tasks, a friend to send
/// them to.
friend_handle: Option<SchedHandle>,
priv friend_handle: Option<SchedHandle>,
/// A fast XorShift rng for scheduler use
rng: XorShiftRng,
/// A toggleable idle callback
idle_callback: Option<~PausibleIdleCallback>,
priv idle_callback: Option<~PausibleIdleCallback>,
/// A countdown that starts at a random value and is decremented
/// every time a yield check is performed. When it hits 0 a task
/// will yield.
yield_check_count: uint,
priv yield_check_count: uint,
/// A flag to tell the scheduler loop it needs to do some stealing
/// in order to introduce randomness as part of a yield
steal_for_yield: bool
priv steal_for_yield: bool
}
/// An indication of how hard to work on a given operation, the difference
@ -793,8 +796,10 @@ pub enum SchedMessage {
}
pub struct SchedHandle {
//already priv
priv remote: ~RemoteCallbackObject,
priv queue: MessageQueue<SchedMessage>,
// made by reedlepee
sched_id: uint
}

View file

@ -20,6 +20,7 @@ use rt::sched::SchedHandle;
use clone::Clone;
pub struct SleeperList {
// already priv
priv state: UnsafeArc<State>
}

View file

@ -15,8 +15,9 @@ use ops::Drop;
use libc::{c_uint, uintptr_t};
pub struct StackSegment {
buf: ~[u8],
valgrind_id: c_uint
// all made by reedlepee
priv buf: ~[u8],
priv valgrind_id: c_uint
}
impl StackSegment {

View file

@ -43,20 +43,22 @@ use send_str::SendStr;
// the type-specific state.
pub struct Task {
heap: LocalHeap,
gc: GarbageCollector,
storage: LocalStorage,
logger: StdErrLogger,
unwinder: Unwinder,
taskgroup: Option<Taskgroup>,
death: Death,
destroyed: bool,
name: Option<SendStr>,
coroutine: Option<Coroutine>,
sched: Option<~Scheduler>,
task_type: TaskType,
//all priv made br reedlepe
heap: LocalHeap,
priv gc: GarbageCollector,
storage: LocalStorage,
logger: StdErrLogger,
unwinder: Unwinder,
taskgroup: Option<Taskgroup>,
death: Death,
destroyed: bool,
name: Option<SendStr>,
coroutine: Option<Coroutine>,
sched: Option<~Scheduler>,
task_type: TaskType,
// Dynamic borrowck debugging info
borrow_list: Option<~[BorrowRecord]>
// should be public
borrow_list: Option<~[BorrowRecord]>
}
pub enum TaskType {
@ -69,7 +71,8 @@ pub struct Coroutine {
/// The segment of stack on which the task is currently running or
/// if the task is blocked, on which the task will resume
/// execution.
current_stack_segment: StackSegment,
//all priv made br reedlepe
priv current_stack_segment: StackSegment,
/// Always valid if the task is alive and not running.
saved_context: Context
}
@ -84,6 +87,7 @@ pub struct GarbageCollector;
pub struct LocalStorage(Option<local_data::Map>);
pub struct Unwinder {
//all priv made br reedlepe
unwinding: bool,
}

View file

@ -18,9 +18,9 @@ use uint;
type raw_thread = libc::c_void;
pub struct Thread {
main: ~fn(),
raw_thread: *raw_thread,
joined: bool,
priv main: ~fn(),
priv raw_thread: *raw_thread,
priv joined: bool
}
impl Thread {

View file

@ -28,7 +28,8 @@ struct TubeState<T> {
}
pub struct Tube<T> {
p: RC<TubeState<T>>
//all priv made br reedlepe
priv p: RC<TubeState<T>>
}
impl<T> Tube<T> {

View file

@ -25,7 +25,8 @@ type GetAddrInfoCallback = ~fn(GetAddrInfoRequest, &UvAddrInfo, Option<UvError>)
pub struct GetAddrInfoRequest(*uvll::uv_getaddrinfo_t);
pub struct RequestData {
getaddrinfo_cb: Option<GetAddrInfoCallback>,
// all made by reedlepee
priv getaddrinfo_cb: Option<GetAddrInfoCallback>,
}
impl GetAddrInfoRequest {

View file

@ -25,7 +25,8 @@ pub struct FsRequest(*uvll::uv_fs_t);
impl Request for FsRequest {}
pub struct RequestData {
complete_cb: Option<FsCallback>
// all made by reedlepee
priv complete_cb: Option<FsCallback>
}
impl FsRequest {

View file

@ -80,7 +80,8 @@ pub mod pipe;
/// with dtors may not be destructured, but tuple structs can,
/// but the results are not correct.
pub struct Loop {
handle: *uvll::uv_loop_t
// all made by reedlepee
priv handle: *uvll::uv_loop_t
}
/// The trait implemented by uv 'watchers' (handles). Watchers are

View file

@ -180,7 +180,8 @@ fn socket_name<T, U: Watcher + NativeHandle<*T>>(sk: SocketNameKind,
// Obviously an Event Loop is always home.
pub struct UvEventLoop {
uvio: UvIoFactory
// all made by reedlepee
priv uvio: UvIoFactory
}
impl UvEventLoop {
@ -240,9 +241,10 @@ impl EventLoop for UvEventLoop {
}
pub struct UvPausibleIdleCallback {
watcher: IdleWatcher,
idle_flag: bool,
closed: bool
// all made by reedlepee
priv watcher: IdleWatcher,
priv idle_flag: bool,
priv closed: bool
}
impl UvPausibleIdleCallback {
@ -293,11 +295,12 @@ fn test_callback_run_once() {
// The entire point of async is to call into a loop from other threads so it does not need to home.
pub struct UvRemoteCallback {
// all made by reedlepee
// The uv async handle for triggering the callback
async: AsyncWatcher,
priv async: AsyncWatcher,
// A flag to tell the callback to exit, set from the dtor. This is
// almost never contested - only in rare races with the dtor.
exit_flag: Exclusive<bool>
priv exit_flag: Exclusive<bool>
}
impl UvRemoteCallback {
@ -801,8 +804,9 @@ impl IoFactory for UvIoFactory {
}
pub struct UvTcpListener {
watcher : TcpWatcher,
home: SchedHandle,
// all made by reedlepee
priv watcher : TcpWatcher,
priv home: SchedHandle,
}
impl HomingIO for UvTcpListener {
@ -863,8 +867,9 @@ impl RtioTcpListener for UvTcpListener {
}
pub struct UvTcpAcceptor {
listener: UvTcpListener,
incoming: Tube<Result<~RtioTcpStreamObject, IoError>>,
// all made by reedlepee
priv listener: UvTcpListener,
priv incoming: Tube<Result<~RtioTcpStreamObject, IoError>>,
}
impl HomingIO for UvTcpAcceptor {
@ -987,8 +992,9 @@ fn write_stream(mut watcher: StreamWatcher,
}
pub struct UvUnboundPipe {
// all made by reedlepee
pipe: Pipe,
home: SchedHandle,
priv home: SchedHandle,
}
impl HomingIO for UvUnboundPipe {
@ -1017,6 +1023,7 @@ impl UvUnboundPipe {
}
pub struct UvPipeStream {
// already
priv inner: ~UvUnboundPipe,
}
@ -1040,8 +1047,9 @@ impl RtioPipe for UvPipeStream {
}
pub struct UvTcpStream {
watcher: TcpWatcher,
home: SchedHandle,
// all made by reedlepee
priv watcher: TcpWatcher,
priv home: SchedHandle,
}
impl HomingIO for UvTcpStream {
@ -1140,8 +1148,9 @@ impl RtioTcpStream for UvTcpStream {
}
pub struct UvUdpSocket {
watcher: UdpWatcher,
home: SchedHandle,
// all made by reedelpee
priv watcher: UdpWatcher,
priv home: SchedHandle,
}
impl HomingIO for UvUdpSocket {
@ -1350,8 +1359,9 @@ impl RtioUdpSocket for UvUdpSocket {
}
pub struct UvTimer {
watcher: timer::TimerWatcher,
home: SchedHandle,
// all made by reedelpee
priv watcher: timer::TimerWatcher,
priv home: SchedHandle,
}
impl HomingIO for UvTimer {
@ -1397,10 +1407,11 @@ impl RtioTimer for UvTimer {
}
pub struct UvFileStream {
loop_: Loop,
fd: c_int,
close_on_drop: bool,
home: SchedHandle
// all made by reedelpee
priv loop_: Loop,
priv fd: c_int,
priv close_on_drop: bool,
priv home: SchedHandle
}
impl HomingIO for UvFileStream {
@ -1530,13 +1541,15 @@ impl RtioFileStream for UvFileStream {
}
pub struct UvProcess {
process: process::Process,
// two made by reedelpee
priv process: process::Process,
// Sadly, this structure must be created before we return it, so in that
// brief interim the `home` is None.
home: Option<SchedHandle>,
priv home: Option<SchedHandle>,
// All None until the process exits (exit_error may stay None)
// Rest were already priv
priv exit_status: Option<int>,
priv term_signal: Option<int>,
priv exit_error: Option<UvError>,

View file

@ -84,6 +84,7 @@ pub static STDIO_WRITABLE_PIPE: c_int = 0x20;
// see libuv/include/uv-unix.h
#[cfg(unix)]
pub struct uv_buf_t {
// all made by reedelpee
base: *u8,
len: libc::size_t,
}
@ -91,26 +92,29 @@ pub struct uv_buf_t {
// see libuv/include/uv-win.h
#[cfg(windows)]
pub struct uv_buf_t {
// all made by reedelpee
len: u32,
base: *u8,
}
pub struct uv_process_options_t {
exit_cb: uv_exit_cb,
file: *libc::c_char,
args: **libc::c_char,
env: **libc::c_char,
cwd: *libc::c_char,
flags: libc::c_uint,
stdio_count: libc::c_int,
stdio: *uv_stdio_container_t,
uid: uv_uid_t,
gid: uv_gid_t,
// all made by reedelpee
exit_cb: uv_exit_cb,
file: *libc::c_char,
args: **libc::c_char,
env: **libc::c_char,
cwd: *libc::c_char,
flags: libc::c_uint,
stdio_count: libc::c_int,
stdio: *uv_stdio_container_t,
uid: uv_uid_t,
gid: uv_gid_t,
}
// These fields are private because they must be interfaced with through the
// functions below.
pub struct uv_stdio_container_t {
// already priv
priv flags: libc::c_int,
priv stream: *uv_stream_t,
}
@ -133,27 +137,29 @@ pub type uv_process_t = c_void;
pub type uv_pipe_t = c_void;
pub struct uv_timespec_t {
// all made by reedelpee
tv_sec: libc::c_long,
tv_nsec: libc::c_long
priv tv_nsec: libc::c_long
}
pub struct uv_stat_t {
st_dev: libc::uint64_t,
// all made by reedelpee
priv st_dev: libc::uint64_t,
st_mode: libc::uint64_t,
st_nlink: libc::uint64_t,
st_uid: libc::uint64_t,
st_gid: libc::uint64_t,
st_rdev: libc::uint64_t,
st_ino: libc::uint64_t,
priv st_nlink: libc::uint64_t,
priv st_uid: libc::uint64_t,
priv st_gid: libc::uint64_t,
priv st_rdev: libc::uint64_t,
priv st_ino: libc::uint64_t,
st_size: libc::uint64_t,
st_blksize: libc::uint64_t,
st_blocks: libc::uint64_t,
st_flags: libc::uint64_t,
st_gen: libc::uint64_t,
priv st_blksize: libc::uint64_t,
priv st_blocks: libc::uint64_t,
priv st_flags: libc::uint64_t,
priv st_gen: libc::uint64_t,
st_atim: uv_timespec_t,
st_mtim: uv_timespec_t,
st_ctim: uv_timespec_t,
st_birthtim: uv_timespec_t
priv st_birthtim: uv_timespec_t
}
impl uv_stat_t {
@ -231,39 +237,42 @@ pub type socklen_t = c_int;
#[cfg(target_os = "android")]
#[cfg(target_os = "linux")]
pub struct addrinfo {
ai_flags: c_int,
ai_family: c_int,
ai_socktype: c_int,
ai_protocol: c_int,
ai_addrlen: socklen_t,
ai_addr: *sockaddr,
ai_canonname: *char,
ai_next: *addrinfo
// all made by reedelpee
priv ai_flags: c_int,
priv ai_family: c_int,
priv ai_socktype: c_int,
priv ai_protocol: c_int,
priv ai_addrlen: socklen_t,
ai_addr: *sockaddr,
priv ai_canonname: *char,
ai_next: *addrinfo
}
#[cfg(target_os = "macos")]
#[cfg(target_os = "freebsd")]
pub struct addrinfo {
ai_flags: c_int,
ai_family: c_int,
ai_socktype: c_int,
ai_protocol: c_int,
ai_addrlen: socklen_t,
ai_canonname: *char,
// all made by reedelpee
priv ai_flags: c_int,
priv ai_family: c_int,
priv ai_socktype: c_int,
priv ai_protocol: c_int,
priv ai_addrlen: socklen_t,
priv ai_canonname: *char,
ai_addr: *sockaddr,
ai_next: *addrinfo
}
#[cfg(windows)]
pub struct addrinfo {
ai_flags: c_int,
ai_family: c_int,
ai_socktype: c_int,
ai_protocol: c_int,
ai_addrlen: size_t,
ai_canonname: *char,
// all made by reedelpee
priv ai_flags: c_int,
priv ai_family: c_int,
priv ai_socktype: c_int,
priv ai_protocol: c_int,
priv ai_addrlen: size_t,
priv ai_canonname: *char,
ai_addr: *sockaddr,
ai_next: *addrinfo
priv vai_next: *addrinfo
}
#[cfg(unix)] pub type uv_uid_t = libc::types::os::arch::posix88::uid_t;
@ -960,8 +969,9 @@ pub unsafe fn freeaddrinfo(ai: *addrinfo) {
}
pub struct uv_err_data {
err_name: ~str,
err_msg: ~str,
// all made by reedelpee
priv err_name: ~str,
priv err_msg: ~str,
}
extern {

View file

@ -17,6 +17,7 @@ use kinds::Send;
use clone::Clone;
pub struct WorkQueue<T> {
// already priv
// XXX: Another mystery bug fixed by boxing this lock
priv queue: ~Exclusive<~[T]>
}

Some files were not shown because too many files have changed in this diff Show more