Struct git2::IndexEntry
source · pub struct IndexEntry {
pub ctime: IndexTime,
pub mtime: IndexTime,
pub dev: u32,
pub ino: u32,
pub mode: u32,
pub uid: u32,
pub gid: u32,
pub file_size: u32,
pub id: Oid,
pub flags: u16,
pub flags_extended: u16,
pub path: Vec<u8>,
}
Expand description
A structure to represent an entry or a file inside of an index.
All fields of an entry are public for modification and inspection. This is also how a new index entry is created.
Fields§
§ctime: IndexTime
§mtime: IndexTime
§dev: u32
§ino: u32
§mode: u32
§uid: u32
§gid: u32
§file_size: u32
§id: Oid
§flags: u16
§flags_extended: u16
§path: Vec<u8>
The path of this index entry as a byte vector. Regardless of the
current platform, the directory separator is an ASCII forward slash
(0x2F
). There are no terminating or internal NUL characters, and no
trailing slashes. Most of the time, paths will be valid utf-8 — but
not always. For more information on the path storage format, see
these git docs. Note that libgit2 will take care of
handling the prefix compression mentioned there.
You can turn this value into a std::ffi::CString
with
CString::new(&entry.path[..]).unwrap()
. To turn a reference into a
&std::path::Path
, see the bytes2path()
function in the private,
internal util
module in this crate’s source code.