pub struct Config {
pub default: String,
pub off: Vec<String>,
pub collectives: Vec<Entry>,
pub engineers: Vec<Engineer>,
pub personal: Option<String>,
}Fields§
§default: String“off”, or the name of the collective for repos no rule matches.
off: Vec<String>Repos no collective may ever see: the hooks do nothing there.
collectives: Vec<Entry>§engineers: Vec<Engineer>Engineers known under several git emails (see the module doc).
personal: Option<String>Named a local collective that received personal lessons until 0.7.3. Unused since: a personal
lesson stays in the collective it was learned in (reach.rs PERSONAL_FILE). Still read and
checked, so a config that names it stays valid.
Implementations§
Source§impl Config
impl Config
Sourcepub fn experts_for(&self, cwd: &str) -> Vec<&ExpertSource>
pub fn experts_for(&self, cwd: &str) -> Vec<&ExpertSource>
The experts of the collective cwd routes to; none for an off repo or another collective’s.
An expert repo behind the boundary is never consulted (see Config::may_consult).
Sourcepub fn may_consult(&self, collective: &str, e: &ExpertSource) -> bool
pub fn may_consult(&self, collective: &str, e: &ExpertSource) -> bool
Whether collective’s drones may read expert e: its repo must not lie under an off path
(no collective may ever see it) nor in another collective that never leaves this machine
(share: local): its claims would land in this collective’s transcripts, and from there in
lessons that sync. Checked on the path as written and on the path symlinks resolve to. An
expert repo outside every collective is fine: listing it as an expert is the opt-in.