Struct rustdoc::html::render::context::Context [−][src]
Major driving force in all rustdoc rendering. This contains information about where in the tree-like hierarchy rendering is occurring and controls how the current page is being rendered.
It is intended that this context is a lightweight object which can be fairly easily cloned because it is cloned per work-job (about once per item in the rustdoc tree).
Fields
current: Vec<String>Current hierarchy of components leading down to what’s currently being rendered
dst: PathBufThe current destination folder of where HTML artifacts should be placed. This changes as the context descends into the module hierarchy.
render_redirect_pages: boolA flag, which when true, will render pages which redirect to the
real location of an item. This is used to allow external links to
publicly reused items to redirect to the right location.
redirections: Option<Rc<RefCell<FxHashMap<String, String>>>>None by default, depends on the generate-redirect-map option flag. If this field is set
to Some(...), it’ll store redirections and then generate a JSON file at the top level of
the crate.
id_map: Rc<RefCell<IdMap>>The map used to ensure all generated ‘id=’ attributes are unique.
deref_id_map: Rc<RefCell<FxHashMap<DefId, String>>>Tracks section IDs for Deref targets so they match in both the main
body and the sidebar.
all: Rc<RefCell<AllTypes>>errors: Rc<Receiver<String>>Storage for the errors produced while generating documentation so they can be printed together at the end.
cache: Rc<Cache>Implementations
impl<'tcx> Context<'tcx>[src]
pub(super) fn path(&self, filename: &str) -> PathBuf[src]
pub(super) fn tcx(&self) -> TyCtxt<'tcx>[src]
fn sess(&self) -> &'tcx Session[src]
pub(super) fn derive_id(&self, id: String) -> String[src]
pub(super) fn root_path(&self) -> String[src]
String representation of how to get back to the root path of the ‘doc/’ folder in terms of a relative URL.
fn render_item(&self, it: &Item, pushname: bool) -> String[src]
fn build_sidebar_items(
&self,
m: &Module
) -> BTreeMap<String, Vec<(String, Option<String>)>>[src]
&self,
m: &Module
) -> BTreeMap<String, Vec<(String, Option<String>)>>
Construct a map of items shown in the sidebar to a plain-text summary of their docs.
pub(super) fn src_href(&self, item: &Item) -> Option<String>[src]
Generates a url appropriate for an href attribute back to the source of
this item.
The url generated, when clicked, will redirect the browser back to the original source code.
If None is returned, then a source link couldn’t be generated. This
may happen, for example, with externally inlined items where the source
of their crate documentation isn’t known.
Trait Implementations
impl<'tcx> Clone for Context<'tcx>[src]
impl<'tcx> FormatRenderer<'tcx> for Context<'tcx>[src]
Generates the documentation for crate into the directory dst
fn descr() -> &'static str[src]
fn init(
krate: Crate,
options: RenderOptions,
edition: Edition,
cache: Cache,
tcx: TyCtxt<'tcx>
) -> Result<(Self, Crate), Error>[src]
krate: Crate,
options: RenderOptions,
edition: Edition,
cache: Cache,
tcx: TyCtxt<'tcx>
) -> Result<(Self, Crate), Error>
fn after_krate(&mut self, krate: &Crate, diag: &Handler) -> Result<(), Error>[src]
fn mod_item_in(&mut self, item: &Item, item_name: &str) -> Result<(), Error>[src]
fn mod_item_out(&mut self, _item_name: &str) -> Result<(), Error>[src]
fn item(&mut self, item: Item) -> Result<(), Error>[src]
fn cache(&self) -> &Cache[src]
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for Context<'tcx>
impl<'tcx> !Send for Context<'tcx>
impl<'tcx> !Sync for Context<'tcx>
impl<'tcx> Unpin for Context<'tcx>
impl<'tcx> !UnwindSafe for Context<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T> Instrument for T[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>[src]
pub fn in_current_span(self) -> Instrumented<Self>[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,