1
Fork 0

Publicise types/add #[allow(visible_private_types)] to a variety of places.

There's a lot of these types in the compiler libraries, and a few of the
older or private stdlib ones. Some types are obviously meant to be
public, others not so much.
This commit is contained in:
Huon Wilson 2014-02-27 18:48:21 +11:00
parent fbdd3b2ef6
commit 218eae06ab
13 changed files with 16 additions and 5 deletions

View file

@ -9,6 +9,7 @@
// except according to those terms. // except according to those terms.
#[allow(missing_doc)]; #[allow(missing_doc)];
#[allow(visible_private_types)];
use serialize::json; use serialize::json;
use serialize::json::ToJson; use serialize::json::ToJson;

View file

@ -173,6 +173,7 @@
// NB this does *not* include globs, please keep it that way. // NB this does *not* include globs, please keep it that way.
#[feature(macro_rules)]; #[feature(macro_rules)];
#[allow(visible_private_types)];
use std::mem::replace; use std::mem::replace;
use std::os; use std::os;

View file

@ -71,6 +71,7 @@ struct Inner {
id: uint, id: uint,
} }
#[allow(visible_private_types)]
pub enum Req { pub enum Req {
// Add a new timer to the helper thread. // Add a new timer to the helper thread.
NewTimer(~Inner), NewTimer(~Inner),

View file

@ -44,6 +44,7 @@ pub struct Timer {
priv on_worker: bool, priv on_worker: bool,
} }
#[allow(visible_private_types)]
pub enum Req { pub enum Req {
NewTimer(libc::c_int, Chan<()>, bool, imp::itimerspec), NewTimer(libc::c_int, Chan<()>, bool, imp::itimerspec),
RemoveTimer(libc::c_int, Chan<()>), RemoveTimer(libc::c_int, Chan<()>),

View file

@ -30,6 +30,8 @@ This API is completely unstable and subject to change.
#[feature(macro_rules, globs, struct_variant, managed_boxes)]; #[feature(macro_rules, globs, struct_variant, managed_boxes)];
#[feature(quote)]; #[feature(quote)];
#[allow(visible_private_types)];
extern crate extra; extern crate extra;
extern crate flate; extern crate flate;
extern crate arena; extern crate arena;

View file

@ -99,7 +99,7 @@ pub enum ExternalLocation {
} }
/// Different ways an implementor of a trait can be rendered. /// Different ways an implementor of a trait can be rendered.
enum Implementor { pub enum Implementor {
/// Paths are displayed specially by omitting the `impl XX for` cruft /// Paths are displayed specially by omitting the `impl XX for` cruft
PathType(clean::Type), PathType(clean::Type),
/// This is the generic representation of a trait implementor, used for /// This is the generic representation of a trait implementor, used for

View file

@ -41,6 +41,7 @@ via `close` and `delete` methods.
#[feature(macro_rules)]; #[feature(macro_rules)];
#[deny(unused_result, unused_must_use)]; #[deny(unused_result, unused_must_use)];
#[allow(visible_private_types)];
#[cfg(test)] extern crate green; #[cfg(test)] extern crate green;

View file

@ -1130,7 +1130,7 @@ pub mod types {
Data4: [BYTE, ..8], Data4: [BYTE, ..8],
} }
struct WSAPROTOCOLCHAIN { pub struct WSAPROTOCOLCHAIN {
ChainLen: c_int, ChainLen: c_int,
ChainEntries: [DWORD, ..MAX_PROTOCOL_CHAIN], ChainEntries: [DWORD, ..MAX_PROTOCOL_CHAIN],
} }

View file

@ -24,6 +24,7 @@ pub trait Local<Borrowed> {
unsafe fn try_unsafe_borrow() -> Option<*mut Self>; unsafe fn try_unsafe_borrow() -> Option<*mut Self>;
} }
#[allow(visible_private_types)]
impl Local<local_ptr::Borrowed<Task>> for Task { impl Local<local_ptr::Borrowed<Task>> for Task {
#[inline] #[inline]
fn put(value: ~Task) { unsafe { local_ptr::put(value) } } fn put(value: ~Task) { unsafe { local_ptr::put(value) } }
@ -127,4 +128,3 @@ mod test {
} }
} }

View file

@ -366,6 +366,7 @@ pub mod native {
#[inline] #[inline]
#[cfg(not(test))] #[cfg(not(test))]
#[allow(visible_private_types)]
pub fn maybe_tls_key() -> Option<tls::Key> { pub fn maybe_tls_key() -> Option<tls::Key> {
unsafe { unsafe {
// NB: This is a little racy because, while the key is // NB: This is a little racy because, while the key is

View file

@ -280,6 +280,7 @@ fn rust_exception_class() -> uw::_Unwind_Exception_Class {
#[cfg(not(target_arch = "arm"), not(test))] #[cfg(not(target_arch = "arm"), not(test))]
#[doc(hidden)] #[doc(hidden)]
#[allow(visible_private_types)]
pub mod eabi { pub mod eabi {
use uw = super::libunwind; use uw = super::libunwind;
use libc::c_int; use libc::c_int;
@ -333,6 +334,7 @@ pub mod eabi {
// ARM EHABI uses a slightly different personality routine signature, // ARM EHABI uses a slightly different personality routine signature,
// but otherwise works the same. // but otherwise works the same.
#[cfg(target_arch = "arm", not(test))] #[cfg(target_arch = "arm", not(test))]
#[allow(visible_private_types)]
pub mod eabi { pub mod eabi {
use uw = super::libunwind; use uw = super::libunwind;
use libc::c_int; use libc::c_int;

View file

@ -48,7 +48,7 @@ pub enum Architecture {
static IntelBits: u32 = (1 << (X86 as uint)) | (1 << (X86_64 as uint)); static IntelBits: u32 = (1 << (X86 as uint)) | (1 << (X86_64 as uint));
static ArmBits: u32 = (1 << (Arm as uint)); static ArmBits: u32 = (1 << (Arm as uint));
struct AbiData { pub struct AbiData {
abi: Abi, abi: Abi,
// Name of this ABI as we like it called. // Name of this ABI as we like it called.
@ -59,7 +59,7 @@ struct AbiData {
abi_arch: AbiArchitecture abi_arch: AbiArchitecture
} }
enum AbiArchitecture { pub enum AbiArchitecture {
RustArch, // Not a real ABI (e.g., intrinsic) RustArch, // Not a real ABI (e.g., intrinsic)
AllArch, // An ABI that specifies cross-platform defaults (e.g., "C") AllArch, // An ABI that specifies cross-platform defaults (e.g., "C")
Archs(u32) // Multiple architectures (bitset) Archs(u32) // Multiple architectures (bitset)

View file

@ -31,6 +31,7 @@ This API is completely unstable and subject to change.
#[feature(quote)]; #[feature(quote)];
#[deny(non_camel_case_types)]; #[deny(non_camel_case_types)];
#[allow(visible_private_types)];
extern crate serialize; extern crate serialize;
extern crate term; extern crate term;