Struct git2::SubmoduleStatus
[−]
pub struct SubmoduleStatus { // some fields omitted }
Return codes for submodule status.
A combination of these flags will be returned to describe the status of a submodule. Depending on the "ignore" property of the submodule, some of the flags may never be returned because they indicate changes that are supposed to be ignored.
Submodule info is contained in 4 places: the HEAD tree, the index, config files (both .git/config and .gitmodules), and the working directory. Any or all of those places might be missing information about the submodule depending on what state the repo is in. We consider all four places to build the combination of status flags.
There are four values that are not really status, but give basic info about what sources of submodule data are available. These will be returned even if ignore is set to "ALL".
- IN_HEAD - superproject head contains submodule
- IN_INDEX - superproject index contains submodule
- IN_CONFIG - superproject gitmodules has submodule
- IN_WD - superproject workdir has submodule
The following values will be returned so long as ignore is not "ALL".
- INDEX_ADDED - in index, not in head
- INDEX_DELETED - in head, not in index
- INDEX_MODIFIED - index and head don't match
- WD_UNINITIALIZED - workdir contains empty directory
- WD_ADDED - in workdir, not index
- WD_DELETED - in index, not workdir
- WD_MODIFIED - index and workdir head don't match
The following can only be returned if ignore is "NONE" or "UNTRACKED".
- WD_INDEX_MODIFIED - submodule workdir index is dirty
- WD_WD_MODIFIED - submodule workdir has modified files
Lastly, the following will only be returned for ignore "NONE".
- WD_UNTRACKED - wd contains untracked files
Methods
impl SubmoduleStatus
fn empty() -> SubmoduleStatus
Returns an empty set of flags.
fn all() -> SubmoduleStatus
Returns the set containing all flags.
fn bits(&self) -> u32
Returns the raw value of the flags currently stored.
fn from_bits(bits: u32) -> Option<SubmoduleStatus>
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
fn from_bits_truncate(bits: u32) -> SubmoduleStatus
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
fn is_empty(&self) -> bool
Returns true
if no flags are currently stored.
fn is_all(&self) -> bool
Returns true
if all flags are currently set.
fn intersects(&self, other: SubmoduleStatus) -> bool
Returns true
if there are flags common to both self
and other
.
fn contains(&self, other: SubmoduleStatus) -> bool
Returns true
all of the flags in other
are contained within self
.
fn insert(&mut self, other: SubmoduleStatus)
Inserts the specified flags in-place.
fn remove(&mut self, other: SubmoduleStatus)
Removes the specified flags in-place.
fn toggle(&mut self, other: SubmoduleStatus)
Toggles the specified flags in-place.
Trait Implementations
impl Hash for SubmoduleStatus
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.
impl Ord for SubmoduleStatus
fn cmp(&self, __arg_0: &SubmoduleStatus) -> Ordering
This method returns an Ordering
between self
and other
. Read more
impl PartialOrd for SubmoduleStatus
fn partial_cmp(&self, __arg_0: &SubmoduleStatus) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &SubmoduleStatus) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &SubmoduleStatus) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &SubmoduleStatus) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &SubmoduleStatus) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Clone for SubmoduleStatus
fn clone(&self) -> SubmoduleStatus
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Eq for SubmoduleStatus
impl PartialEq for SubmoduleStatus
fn eq(&self, __arg_0: &SubmoduleStatus) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &SubmoduleStatus) -> bool
This method tests for !=
.
impl Copy for SubmoduleStatus
impl BitOr for SubmoduleStatus
type Output = SubmoduleStatus
The resulting type after applying the |
operator
fn bitor(self, other: SubmoduleStatus) -> SubmoduleStatus
Returns the union of the two sets of flags.
impl BitXor for SubmoduleStatus
type Output = SubmoduleStatus
The resulting type after applying the ^
operator
fn bitxor(self, other: SubmoduleStatus) -> SubmoduleStatus
Returns the left flags, but with all the right flags toggled.
impl BitAnd for SubmoduleStatus
type Output = SubmoduleStatus
The resulting type after applying the &
operator
fn bitand(self, other: SubmoduleStatus) -> SubmoduleStatus
Returns the intersection between the two sets of flags.
impl Sub for SubmoduleStatus
type Output = SubmoduleStatus
The resulting type after applying the -
operator
fn sub(self, other: SubmoduleStatus) -> SubmoduleStatus
Returns the set difference of the two sets of flags.
impl Not for SubmoduleStatus
type Output = SubmoduleStatus
The resulting type after applying the !
operator
fn not(self) -> SubmoduleStatus
Returns the complement of this set of flags.