~/bend-docscommunity

domain/architecture/view/ops.bend checks

raw source on the hub · import 0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/ops.bend as Ops

10 imports
import Base
import ../../../general/rose/type.bend as R
import ../../../general/rose/ops.bend as RO
import ../../../general/compound/type.bend as C
import ../../../general/compound/ops.bend as CO
import ../../../general/compound/edge/type.bend as E
import ../type.bend as A
import ../ops.bend as O
import ../system/deployment/type.bend as D
import ./type.bend as Vw

Types

type Placed source · line 268 · raw

Data

Where each instance is drawn: its container's key and its D2 path.

Definitions

def level_name source · line 14 · raw

@l:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Level -> String

---- one element as a D2 box, in C4's colors: people dark blue, what the view is about blue, everything around it gray ----

def kind_line source · line 27 · raw

@+l:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Level -> @+t:String -> String

def is_person source · line 30 · raw

@l:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Level -> Bool

def focus_fill source · line 37 · raw

@l:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Level -> String

def fill source · line 50 · raw

@+l:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Level -> @focus:Bool -> String

def box source · line 57 · raw

@+path:String -> @e:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element -> @+focus:Bool -> String

def element source · line 62 · raw

@+k:String -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> 0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element

def boxes source · line 66 · raw

@ks:List<&2, String> -> @+prefix:String -> @+focus:Bool -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> String

D2 names are the keys, prefixed so none is a D2 keyword (like near).

def keep_unless source · line 74 · raw

@c:Bool -> @x:String -> @rest:List<&2, String> -> List<&2, String>

---- which keys a view shows ----

def without source · line 81 · raw

@+k:String -> @xs:List<&2, String> -> List<&2, String>

def inner source · line 89 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @v:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.View -> List<&2, String>

The keys the view is about, drawn inside its boundary.

def visible source · line 103 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @v:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.View -> List<&2, String>

The keys the view may show: its own, the rest of the system at the level above, and the environment.

def boundary source · line 116 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @v:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.View -> String

def ename source · line 129 · raw

@e:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element -> String

def title source · line 134 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> @v:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.View -> String

def roots source · line 151 · raw

@c:0x0826261f6dc5a61da47ff8908a941ce1/general/compound/type.Compound<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>>

def keep_edge source · line 156 · raw

@c:Bool -> @e:0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge -> @rest:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

def touching source · line 164 · raw

@es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> @+ins:List<&2, String> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

The edges with an end among the view's own keys.

def keep_new source · line 173 · raw

@c:Bool -> @+k:String -> @rest:List<&2, String> -> List<&2, String>

def around source · line 181 · raw

@es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> @+ins:List<&2, String> -> @+seen:List<&2, String> -> List<&2, String>

The keys around the view's own: whatever its edges reach, once each.

def path source · line 191 · raw

@+k:String -> @+ins:List<&2, String> -> @+b:String -> String

def label source · line 194 · raw

@+d:String -> @+t:String -> String

def edge_lines source · line 197 · raw

@es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> @+ins:List<&2, String> -> @+b:String -> String

def inner_boxes source · line 206 · raw

@+ins:List<&2, String> -> @+b:String -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> String

def draw source · line 210 · raw

@+t:String -> @+ins:List<&2, String> -> @+b:String -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> @+es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> String

def static_view source · line 214 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @+v:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.View -> String

Context, containers and components: the view's keys, and the architecture's edges lifted to what shows.

def step_edges source · line 220 · raw

@ss:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.Step> -> @+n:Nat -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

---- dynamic: numbered steps between elements as they are ----

def inside source · line 230 · raw

@es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> @+sys:List<&2, String> -> @+seen:List<&2, String> -> List<&2, String>

The steps' ends inside the system, once each.

def dynamic_view source · line 240 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @ss:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.Step> -> String

def node_kind source · line 247 · raw

@+t:String -> String

---- deployment: the machines, nested, with the containers running on them ----

def instance_boxes source · line 250 · raw

@ks:List<&2, String> -> @+p:String -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> String

def node_lines source · line 257 · raw

@ns:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/system/deployment/type.Node> -> @+prefix:String -> @+rs:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/rose/type.Rose<0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Element>> -> String

def instance_places source · line 271 · raw

@ks:List<&2, String> -> @+p:String -> List<&2, Placed>

def places source · line 278 · raw

@ns:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/system/deployment/type.Node> -> @+prefix:String -> List<&2, Placed>

def to_each source · line 288 · raw

@ps:List<&2, Placed> -> @+from:String -> @+y:String -> @+d:String -> @+t:String -> @+rest:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

def from_here source · line 297 · raw

@c:Bool -> @+all:List<&2, Placed> -> @+pp:String -> @+y:String -> @+d:String -> @+t:String -> @+tail:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

def from_each source · line 304 · raw

@ps:List<&2, Placed> -> @+all:List<&2, Placed> -> @+x:String -> @+y:String -> @+d:String -> @+t:String -> @+rest:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

def instance_edges source · line 314 · raw

@es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> @+ps:List<&2, Placed> -> List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge>

Each container edge, drawn between every pair of its ends' instances.

def path_lines source · line 323 · raw

@es:List<&2, 0x0826261f6dc5a61da47ff8908a941ce1/general/compound/edge/type.Edge> -> String

def deployment_view source · line 332 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> String

def d2 source · line 339 · raw

@+a:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/type.Architecture -> @v:0x0826261f6dc5a61da47ff8908a941ce1/domain/architecture/view/type.View -> String

---- a view as D2 ----