pub struct GraphHeader { /* private fields */ }Expand description
GraphHeader. The header is stored in the first sector of the disk index file, or the first segment of the JET stream.
Implementations§
Source§impl GraphHeader
impl GraphHeader
Sourcepub const CURRENT_LAYOUT_VERSION: GraphLayoutVersion
pub const CURRENT_LAYOUT_VERSION: GraphLayoutVersion
Update the layout version when the GraphHeader layout is modified.
pub fn new( metadata: GraphMetadata, block_size: u64, layout_version: GraphLayoutVersion, ) -> Self
Sourcepub fn to_bytes(&self) -> ANNResult<Vec<u8>>
pub fn to_bytes(&self) -> ANNResult<Vec<u8>>
Serialize the GraphHeader object to a byte vector.
Layout:
| GraphMetadata (80 bytes) | BlockSize (8 bytes) | GraphLayoutVersion (8 bytes) |
pub fn metadata(&self) -> &GraphMetadata
pub fn block_size(&self) -> u64
pub fn layout_version(&self) -> &GraphLayoutVersion
Sourcepub fn max_degree<DataType>(&self) -> Result<usize, GraphHeaderError>
pub fn max_degree<DataType>(&self) -> Result<usize, GraphHeaderError>
Returns the maximum degree of the graph
§Type Parameters
DataType- The type of vector data stored in the graph nodes
Trait Implementations§
Source§impl<'a> TryFrom<&'a [u8]> for GraphHeader
impl<'a> TryFrom<&'a [u8]> for GraphHeader
Auto Trait Implementations§
impl Freeze for GraphHeader
impl RefUnwindSafe for GraphHeader
impl Send for GraphHeader
impl Sync for GraphHeader
impl Unpin for GraphHeader
impl UnwindSafe for GraphHeader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more