pub struct GraphEdges { /* private fields */ }
Expand description

The underlying edges of the graph which only contains the raw relationship data.

This is kept separate from the Graph as the Nodes get consumed when the Solc to Sources set is determined.

Implementations§

source§

impl GraphEdges

source

pub fn num_source_files(&self) -> usize

How many files are source files

source

pub fn files(&self) -> impl Iterator<Item = usize> + '_

Returns an iterator over all file indices

source

pub fn source_files(&self) -> impl Iterator<Item = usize> + '_

Returns an iterator over all source file indices

source

pub fn library_files(&self) -> impl Iterator<Item = usize> + '_

Returns an iterator over all library files

source

pub fn include_paths(&self) -> &IncludePaths

Returns all additional --include-paths

source

pub fn unresolved_imports(&self) -> &HashSet<(PathBuf, PathBuf)>

Returns all imports that we failed to resolve

source

pub fn imported_nodes(&self, from: usize) -> &[usize]

Returns a list of nodes the given node index points to for the given kind.

source

pub fn all_imported_nodes( &self, from: usize ) -> impl Iterator<Item = usize> + '_

Returns an iterator that yields all imports of a node and all their imports

source

pub fn imports(&self, file: impl AsRef<Path>) -> HashSet<&PathBuf>

Returns all files imported by the given file

source

pub fn node_id(&self, file: impl AsRef<Path>) -> usize

Returns the id of the given file

source

pub fn node_path(&self, id: usize) -> &PathBuf

Returns the path of the given node

source

pub fn is_input_file(&self, file: impl AsRef<Path>) -> bool

Returns true if the file was originally included when the graph was first created and not added when all imports were resolved

source

pub fn version_requirement(&self, file: impl AsRef<Path>) -> Option<&VersionReq>

Returns the VersionReq for the given file

Returns those library files that will be required as linkReferences by the given file

This is a preprocess function that attempts to resolve those libraries that will the solidity file will be required to link. And further restrict this list to libraries that won’t be inlined.

See also parse::SolLibrary.

Trait Implementations§

source§

impl Debug for GraphEdges

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

impl<T> JsonSchemaMaybe for T