MCPcopy Create free account
hub / github.com/atomicdotdev/atomic / build_scope

Method build_scope

atomic-cli/src/commands/identity/delegate.rs:248–282  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

246
247impl Delegate {
248 fn build_scope(&self) -> CliResult<DelegationScope> {
249 let mut builder = DelegationScope::builder().permissions(parse_permissions(&self.can)?);
250
251 for url in self.bound_servers()? {
252 builder = builder.server(url);
253 }
254 for pattern in self
255 .projects
256 .as_deref()
257 .map(parse_patterns)
258 .unwrap_or_default()
259 {
260 builder = builder.project(pattern);
261 }
262 for pattern in self
263 .workspaces
264 .as_deref()
265 .map(parse_patterns)
266 .unwrap_or_default()
267 {
268 builder = builder.workspace(pattern);
269 }
270 for pattern in self
271 .views
272 .as_deref()
273 .map(parse_patterns)
274 .unwrap_or_default()
275 {
276 builder = builder.view(pattern);
277 }
278 if let Some(max) = self.max_changes {
279 builder = builder.max_changes(max);
280 }
281 Ok(builder.build())
282 }
283
284 /// Which servers this grant is valid against.
285 ///

Callers 1

runMethod · 0.45

Calls 9

parse_permissionsFunction · 0.85
bound_serversMethod · 0.80
serverMethod · 0.80
projectMethod · 0.80
workspaceMethod · 0.80
max_changesMethod · 0.80
permissionsMethod · 0.45
viewMethod · 0.45
buildMethod · 0.45

Tested by

no test coverage detected