diff --git a/d2renderers/d2ascii/d2ascii.go b/d2renderers/d2ascii/d2ascii.go index 1eb3e3ae7..4f8f014cf 100644 --- a/d2renderers/d2ascii/d2ascii.go +++ b/d2renderers/d2ascii/d2ascii.go @@ -62,7 +62,7 @@ func Render(diagram *d2target.Diagram, opts *RenderOpts) ([]byte, error) { } } - return canvas.Bytes(), nil + return canvas.TrimBytes(), nil } // Canvas handles the ASCII grid and drawing operations @@ -269,6 +269,45 @@ func (c *Canvas) Bytes() []byte { return buf.Bytes() } +// TrimBytes removes excess whitespace from all sides of the ASCII output +func (c *Canvas) TrimBytes() []byte { + // Find bounds of content + minX, minY, maxX, maxY := c.w, c.h, 0, 0 + + // Scan for content bounds + for y := 0; y < c.h; y++ { + for x := 0; x < c.w; x++ { + if c.grid[y][x] != ' ' { + if x < minX { + minX = x + } + if x > maxX { + maxX = x + } + if y < minY { + minY = y + } + if y > maxY { + maxY = y + } + } + } + } + + // If no content found, return empty + if minX > maxX || minY > maxY { + return []byte{} + } + + // Create trimmed output + var buf bytes.Buffer + for y := minY; y <= maxY; y++ { + buf.WriteString(string(c.grid[y][minX : maxX+1])) + buf.WriteByte('\n') + } + return buf.Bytes() +} + func min(a, b int) int { if a < b { return a diff --git a/docs/examples/chess/dia.txt b/docs/examples/chess/dia.txt index ee7e5298b..b040be722 100644 --- a/docs/examples/chess/dia.txt +++ b/docs/examples/chess/dia.txt @@ -1,274 +1,224 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - +-----------------+ - | | - | | - | | - | | - | | - | | - | | - | Hans Niemann | - | | - | | - | | - | | - | | - / | - //| | - / +-----/------/----/ - // / / / - // / / / - / / / // - // / / / - / / / / - // / / / - / / / / - // / / / - // / / // - / / / / - // / / / - / / / / - / / / / - / / / / - / / / / - / / / / - / / / / - / / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - | / / / - +-|----------------------/---------------------+| | - | / || | - | / || | - | / || | - | / || | - | / || | - | / || | - | +--------------/---+ || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | Magnus Carlsen | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | +---------|--------+ || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | +----------|----------+ || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | Play Magnus Group | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | | | || | - | +----------|----------+ || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | | || | - | / |/ | - | / / | - | / / | - | / defendants /| | - | / /| | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | / / | | - | +---/----------/ | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | Chess.com | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | +-------|------+ | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | / - | / | / - | / | / - | / | / - | / | / - | / | / - | / | / - | / | / - | / | / - | / | // - | / | / - | / | / - | / | / - | / | / - | / | // - | / | / - | / | / - | / |/ - | / // - | +-------/------------+ / | - | | |/ | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | Hikaru Nakamura | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | +--------------------+ | - | | - | | - | | - | | - | | - | | - | | - +----------------------------------------------+ - - - - - - - - - - - - - - - - - - - - - - - - - + +-----------------+ + | | + | | + | | + | | + | | + | | + | | + | Hans Niemann | + | | + | | + | | + | | + | | + / | + //| | + / +-----|------|----/ + // | | / + // | | / + / | | // + // | | / + / | | / + // | | / + / | | / + // | | / + // | | // + / | | / + // | | / + | | | / + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | ++-|----------------------|---------------------+| | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| +--------------|---+ || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | Magnus Carlsen | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| +---------|--------+ || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| +----------|----------+ || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | Play Magnus Group | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| | | || | +| +----------|----------+ || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | || | +| | | | +| | | | +| | defendants || | +| | || | +| | | | | +| | | | | +| | | | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| | / | | +| +---|----------/ | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | Chess.com | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| | | | | +| +-------|------+ | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | / +| | | // +| | | / +| | | / +| | | / +| | | / +| | | // +| | | / +| | | / +| | |/ +| | // +| +-------|------------+ / | +| | |/ | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | Hikaru Nakamura | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| | | | +| +--------------------+ | +| | +| | +| | +| | +| | +| | +| | ++----------------------------------------------+ diff --git a/docs/examples/flipt/output.txt b/docs/examples/flipt/output.txt index f8cd2ad3c..61978a9a7 100644 --- a/docs/examples/flipt/output.txt +++ b/docs/examples/flipt/output.txt @@ -1,176 +1,116 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +--------------------------------------------------------+ - | | - | | - | | - | | - | | - | | - | +-------------------------------------------------+ | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | +----+ +----+ +----+ +----+ | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | +--------------------------------+ - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | +----+ +----+ +----+ +----+ | | | +-------+ | - | | | | | | | | - | | | | | | | | - | | | | | | | | - | | | | | | | | - +------------------------------------------------------------------+ | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | ------ | | - | | | | +----+ +----+ +----+ +----+ | | | // | | | - | | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | / | | | - | +----------+ | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | / +-------+ | - | | | | | | | | | | | | | | | | | / | - | | | | | | | | | | | | | | | | | / | - | | | | | | +----+ +----+ +----+ +----+ | | | +----+/ | - | ------ linked -----/ | | | | | | | / | - | // | | // | | | | | | | | | - | / | | / | | | | | | | | | - | / | | / +-----------+ | | | | | | | | | - | / | | / | | | | | Test -------------------------- | Release | - | / | | / | | | | | | | | | | | - | / | | / | | | | | | | | | | | - | / | | /| | | | | | | | | | | - | +----------/ +----------+ / | | | | | | | | | | - | | | | | | | | +----+ +----+ +----+ +----+ | | | +----/ | - | | | | | | | | | | | | | | | | | | | / | - | | | | | | | | | | | | | | | | | | | / | - | | | | | | | | | | | | | | | | | | | / +-------+ | - | | | | | | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | | | / | | | - | | | Build | | | | | | | | | | | | | | | | / | | | - | | source | | -------------------------- | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | | | / | | | - | | | | | | | | | | | | | | | | | | | / | | | - | | | | | | | | +----+ +----+ +----+ +----+ | | | / | | | - | | | | | | | | | | | / | | | - | | | | | | | | | | | ------ | | - | | | | | | | | | | | | | | - | | / +----------+ | | | | | | | | | | | - | +----------+/ | | / | | | | | | | | | | - | / | | /| | | | | | | | | | | - | / | | / | | | | | | | | | | | - | / | | / | | | | | | | | | | | - | / | | / +-----------+ | | | | | | | | | - | / | | / | | | +----+ +----+ +----+ +----+ | | | +-------+ | - | / | | / | | | | | | | | | | | | | | | - | // | assets | // | | | | | | | | | | | | | | | - | ------ -----/ | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | +--------------------------------+ - | | | | | | | | | | | | | | | | - | +----------+ | | | +----+ +----+ +----+ +----+ | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - +------------------------------------------------------------------+ | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | +-------------------------------------------------+ | - | | - | | - | | - | | - | | - | | - | | - +--------------------------------------------------------+ - - - - - - - - - - - - - - - - - - - - - - - - - + +--------------------------------------------------------+ + | | + | | + | | + | | + | | + | | + | +-------------------------------------------------+ | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | +----+ +----+ +----+ +----+ | | + | | | | | | | | | | | | + | | | | | | | | | | | | + | | | | | | | | | | | | +--------------------------------+ + | | | | | | | | | | | | | | + | | | | | | | | | | | | | | + | | | | | | | | | | | | | | + | | | | | | | | | | | | | | + | | | | | | | | | | | | | | + | | | | | | | | | | | | | | + | | +----+ +----+ +----+ +----+ | | | +-------+ | + | | | | | | | | + | | | | | | | | + | | | | | | | | + | | | | | | | | ++------------------------------------------------------------------+ | | | | | | | | +| | | | | | | | | | +| | | | | | | | | | +| | | | | | | | | | +| | | | | | | ------ | | +| | | | +----+ +----+ +----+ +----+ | | | // | | | +| | | | | | | | | | | | | | | / | | | +| | | | | | | | | | | | | | | | | | | +| +----------+ | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | +-------+ | +| | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | +| | | | | | +----+ +----+ +----+ +----+ | | | +----+| | +| ------ linked -----/ | | | | | | | | | +| // | | // | | | | | | | | | +| / | | | | | | | | | | | | +| | | | | +-----------+ | | | | | | | | | +| | | | | | | | | | Test -------------------------- | Release | +| | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | +| | | | || | | | | | | | | | | +| +----------| +----------+ | | | | | | | | | | | +| | | | | | | | +----+ +----+ +----+ +----+ | | | +----| | +| | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | +-------+ | +| | | | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | | | +| | | Build | | | | | | | | | | | | | | | | | | | | +| | source | | -------------------------- | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | / | | | +| | | | | | | | +----+ +----+ +----+ +----+ | | | / | | | +| | | | | | | | | | | / | | | +| | | | | | | | | | | ------ | | +| | | | | | | | | | | | | | +| | | +----------+ | | | | | | | | | | | +| +----------+| | | | | | | | | | | | | | +| | | | || | | | | | | | | | | +| | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | +| | | | | +-----------+ | | | | | | | | | +| | | | | | | | +----+ +----+ +----+ +----+ | | | +-------+ | +| / | | | | | | | | | | | | | | | | | | +| // | assets | // | | | | | | | | | | | | | | | +| ------ -----/ | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | +--------------------------------+ +| | | | | | | | | | | | | | | | +| +----------+ | | | +----+ +----+ +----+ +----+ | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | ++------------------------------------------------------------------+ | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | +-------------------------------------------------+ | + | | + | | + | | + | | + | | + | | + | | + +--------------------------------------------------------+ diff --git a/docs/examples/japan-grid/japan.txt b/docs/examples/japan-grid/japan.txt index b71177c36..16e72c339 100644 --- a/docs/examples/japan-grid/japan.txt +++ b/docs/examples/japan-grid/japan.txt @@ -1,351 +1,301 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | 北 海 道 | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | 青 森 | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | 秋 田 | 岩 手 | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | 石 川 | || 新 潟 | 山 形 | 宮 城 | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | 福 井 | 富 山 || 群 馬 | 栃 木 | 福 島 | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | 山 口 | 島 根 || 鳥 取 | 兵 庫 || 京 都 | 滋 賀 | 長 野 || 山 梨 | 埼 玉 | 茨 城 | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | 広 島 || 岡 山 | 大 阪 || 奈 良 | 岐 阜 | 愛 知 || 静 岡 | TOKYO | 千 葉 | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | 長 崎 || 佐 賀 | 福 岡 | || | || 和 歌 山 | 三 重 | || | 神 奈 川 | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || 熊 本 | 大 分 | || 愛 媛 | 香 川 || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || 鹿 児 島 | 宮 崎 | || 高 知 | 徳 島 || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | 沖 縄 || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - | || | | || | || | | || | | | - +-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ - - - - - - - - - - - - - - - - - - - - - - - - - ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | 北 海 道 | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | 青 森 | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | 秋 田 | 岩 手 | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | 石 川 | || 新 潟 | 山 形 | 宮 城 | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | 福 井 | 富 山 || 群 馬 | 栃 木 | 福 島 | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | 山 口 | 島 根 || 鳥 取 | 兵 庫 || 京 都 | 滋 賀 | 長 野 || 山 梨 | 埼 玉 | 茨 城 | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | 広 島 || 岡 山 | 大 阪 || 奈 良 | 岐 阜 | 愛 知 || 静 岡 | TOKYO | 千 葉 | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| 長 崎 || 佐 賀 | 福 岡 | || | || 和 歌 山 | 三 重 | || | 神 奈 川 | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || 熊 本 | 大 分 | || 愛 媛 | 香 川 || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || 鹿 児 島 | 宮 崎 | || 高 知 | 徳 島 || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| 沖 縄 || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | +| || | | || | || | | || | | | ++-----------++------------+-----------+-----------++-----------+-----------++------------+-----------+-----------++-----------+------------+------------+ diff --git a/docs/examples/twitter/out.txt b/docs/examples/twitter/out.txt index 39607ff27..8118e85e2 100644 --- a/docs/examples/twitter/out.txt +++ b/docs/examples/twitter/out.txt @@ -1,586 +1,530 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - +---------------+ +---------------+ +---------------+ - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | Android | | Iphone | | Web | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - +---------------+ +---------------+ +---------------+ - - - - - - | | | - | | | - | | | - | | | - | | | - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / +-------|-------+ / - / | | / - / | | / - / | | / - / | | / - /| |/ - / / - | | - | | - | | - | | - | | - | | - | | - | | - | | - Twitter Frontend - | | - | | - // | - // | | - /// | / - /// | |// - // | | / - /// | | / - // | | // - /// | | / - /// | | / - // | | // - /// | | / - // | | / - /// | | // - // +---------------+ / - /// / - /// // - // / - /// / - // // - /// / - /// / - // // - // / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / / - / | - | | - +-----------------|---------------------------------------------------------------------------------------------------------------------------|----------+ - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | | | - | | +-------|-------+ | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | +-------------|--------------+ | | | - | | | | | | - | | | | | | - | | | | | | - | | | +-------------------------------------------------------------+ | | | - | | | | | | | | - | | | | | | | | - | | | | | | | | - | | TLS-API (being deprecated) | | ## Tweet/user content hydration, visibility filtering | | GraphQL | | - | | | | | Federated Strato Column - | | | | | | | | - | | | | | // | | - | | | | | /// | | | - | | | +-------------------------------------------------------------+ // | | | - | | | /// | / | - | | | /// | |//| - | +----------------------------+ /// | | / - | | // | | |// - | | /// | | | // - | | /// | | | / - | | /// | | | // - | | // | | | / - | | /// | | | // - | | /// | | | / - | | /// | | | // - | | /// +---------------+ | / - | | // | // - | | /// | // - | | /// | / - | | /// | // - | | // | / - | | /// | // - | | // | / - | | // | / - | / // | / - | / // | / - +-------------------/------------------------------------------------/-----------------------------------------------------------------------------------+ / - / // / - / // / - / // / - / | / - / | / - / | / - / | / - / | / - / | / - / | / - / // / - / //// / - / /// / - / /// / - / //// / - / /// / - // /// | - /////// | - /// //// | - //// //// | - /// /// | - /// //// | - //// //// | - /// /// | - //// //// | - /// //// | - /// //// | - //// /// | - /// //// | - /// //// | - //// +-----------------------------------------//----------------------------------------------------------------------------------------------------|--+ - |/ | | - | | | - | | | - | | | - | | | - | | | - | | | - | | +----------------------------------+ | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - | | | | | - +-------|-------+ | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | ## **Timeline mixer** | | - | | | - Inject ads, who-to-follow, onboarding | - | Home mixer | | | - Conversation module | | - | | | | - Cursoring,pagination | | - | | | | - Tweat deduplication | | - | | | | - Served data logging | | - /| | | | | | - // | | | | | | - // /| | | | | | - // / | | | | | | - // // +---------------/ | | | | - // / / / / / / | | | | - // / / / / / / | | | | - // // / / / / / | | | | - // / / / / / / | | | | - // / / / / / / | | | | - // // / / / / / | | | | - // / / / / / / | | | | - // / / / / / / | | | | - // // / / / / / | | | | - // / / / / / / | | | | - // / / / / / / | | | | - // // / / / / / | | | | - // / / / / / / | | | | - // / / / / / / | | | | - // // / / / / / | | | | - // / / / / / / | +----------------------------------+ | - // / / / / / / | | - // // / / / / / | | - // / / / / / / | | - // / / / / / / | | - // // / / / / / | | - // / / / / / / | | - / / / | / / / +--------------------------------------------------------------------------------------------------------------------------------------------------+ - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / | | | | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - / / / | / / / / / / | | | - | | | | / / / / / / | | | - | | | | / / / / / / | | | - | | | | / / // // / / | | | - | | | | / / / / / | | | - | | | | / / / / / / | | | - | | | | / / / / / / | | | - | | | | / / // / / / | | | - | | | | / / / // / / | | | - | | | | / / / / / / | | | - | | | | / / // / / / | | | - | | | | / / / / / | | | - | | | | / / / /// / | | | +--------------+ - | | | | / / / // / | | | | | - | | | | / // / / / / | | | | | - | | | | / / / / / +------------+ | +---------------+ +-------------------+ | | - | | | | / / / / / | | | | | | | | | - +--------------+ +---------------+ +--------------+ +--------------+ +-------------------+ +----------------+ // | | +------------+ | | | | | | - | | | | | | | | | | | | /| | | | | | | | | | - | | | | | | | | | | | | / | | | | | | | | | - | | | | | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | Timeline | | | | Onboarding | | People discovery | | Fetch | - | Tweety Pie | | Social graph | | Gizmoduck | | Manhattan | | Timeline Service | | Home Ranker | | Scorer | | Ad mixer | | service | | service | | | - | | | | | | | | | | | | | | | | | | | | | // | - | | | | | | | | | | | | | | | | | | | | /// | - | | | | | | | | | | | | | | | | | | | | ///| | - | | | | | | | | | | | |// | | | | | | | |//// | | - | | | | | | | | | | | | // | | | | | | | /// | | - | | | | | | | | | | | | // | | | | | | | /// | | | - | | | | | | | | | | | | // | | | | | | /// | | | - +--------------+ +---------------+ +--------------+ +--------------+ +-------------------+ +------/---------+ |/// | +------------+ | | | /// | | | - / | // | | | | //// | | | - / +-----//-----+ +---------------+ +-///---------------+ | | - / // /// | | - / /// /// +--------/-----+ - / // /// / - / // //// / - / /// /// / - / // /// / - / // /// / - / // /// / - / /// //// / - / // /// / - / // /// / - / // // / - / // / / - / //// / | - / /// / | - / //// // | - / /// / | - / //// / | - / /// / | - / //// / | - / /// / | - / //// / | - / /// / | - / //// / | - / //// // | - / /// / | - / //// / | - //// / | - //// / | - /// / / | - //// / / | - /// / / | - //// / // | - /// / / | - //// / / | - |/ / / | - | / // | - | / // | - | / /// | - | / /// | - | / // | - | +-------/----------------------------------------///---------------------------------------------------------------------+ | - | | / // | | - | | / /// | - | | / /// | +----------------+ - | | / // | | | - | | / /// | | | - | | / /// | | | - | | / // | | | - +----------------+ | +-----------+ /// +------------+ +--------+ +---------+ +----------------+ | | | - | | | | | // | | | | | | | | | | | - | | | | | /// | | | | | | | | | | | - | | | | | /// | | | | | | | | | | | - | | | | | // | | | | | | | | | | | - | | | | // | | | | | | | | | | | - | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | Feature | - | Home Scorer | | | CrMixer | | EarlyBird | | Utag | | Space | | Communities | | | | - | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | / | - | | | | | | | | | | | | | | |// | - | | | | | | | | | | | | | | // | - | | | | | | | | | | | | | | / | | - | | | | | | | | | | | | | | // | / | - +---/--//---/----+ | +-----------+ +------------+ +--------+ +---------+ +----------------+ | // |/ | - / // / | | / / | - / // / | | // /| | - / // / | | / / | | - / / / / | | // / +--/--------/----+ - / / / / | | // / / / - / / / / | | / / / / - / // / +------------------------------------------------------------------------------------------------------------------------+ // / / / - / // / // / / / - / // / / / / / - / / / / // / / / - / / / / // / / / - / / / / / / / / - / | / / / / / / - / | / / / / / | - / | / // / / / | - / | / / / / / | - / | // / / / / | - / | / // / / / | - / | / / / / / | - / | / / / / / | - /| / / / / / | - / / // / / / | - |/ / / / / / | - | / / / / / / | - | / // // / / / | - | / / / / / / | - | / / / / / / | - | / / / / / / | - | / / // / / / | - | / / / / / / | - | / / / / / / | - | / / / / / / | - | / / // / / / | - | / // / / / / | - | / / / / / / | - | / / // / / / | - | / / / / / / | - | /// /// /// / / / | - | //// ///// ///// / / / | - | ///// //// ////// / / / | - | //// ///// ///// / / / | - | //// ///// ///// / / / | - | ///// ///// ///// / / / | - | //// //// ///// / / / | - | ///// ///// ////// / / / | - | //// ///// ///// / / / | - +-------|-------+ //// ///// ///// / / / | - | | ///// //// ///// / / / | - | | //// ///// ////// / / / - | | ///// ///// ///// / / / - | | //// //// ///// / / / +----------------+ - | | ///// ///// ///// / +--------------/--+ / | | - | | //// ///// ///// / | | / | | - | | //// ///// ////// / | | / | | - | | ///// //// +---------///// | | +--------/-----+ | | - | | //// ///// | / ///// | | | | | - | | ///// ///// | | ///// | | | | | - | | //// |///// | | ///// | | | | | - | | //// | ////| | ////// | | | | - | | ///// | ///// | |///// | | | | - | | //// | | /// | /// | | | - | | /// | | | | | | | - Prediction Service | ...etc | | Memcache | | Manhattan | | Scoring | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | | | | | | | | | - | | +---------+ | | +--------------+ | | - | | | | | | - | | | | | | - | | | | | | - | | +-----------------+ | | - | | +-------|--------+ - | | | - | | | - +---------------+ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +-------|-------+ - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - Prediction Service - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - +---------------+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + +---------------+ +---------------+ +---------------+ + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | Android | | Iphone | | Web | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + +---------------+ +---------------+ +---------------+ + + + + + + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | +-------|-------+ | + | | | | + | | | | + | | | | + | | | | + || || + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + Twitter Frontend + | | + | | + // | + // | | + /// | / + /// | |// + // | | / + /// | | / + // | | // + /// | | / + /// | | / + // | | // + /// | | / + // | | / + /// | | // + // +---------------+ / + /// / + /// // + // / + /// / + // // + /// / + /// / + // // + |/ / + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +-----------------|---------------------------------------------------------------------------------------------------------------------------|----------+ + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | | | + | | +-------|-------+ | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | +-------------|--------------+ | | | + | | | | | | + | | | | | | + | | | | | | + | | | +-------------------------------------------------------------+ | | | + | | | | | | | | + | | | | | | | | + | | | | | | | | + | | TLS-API (being deprecated) | | ## Tweet/user content hydration, visibility filtering | | GraphQL | | + | | | | | Federated Strato Column + | | | | | | | | + | | | | | // | | + | | | | | /// | | | + | | | +-------------------------------------------------------------+ // | | | + | | | /// | / | + | | | /// | |//| + | +----------------------------+ /// | | / + | | // | | |// + | | /// | | | // + | | /// | | | / + | | /// | | | // + | | // | | | / + | | /// | | | // + | | /// | | | / + | | /// | | | // + | | /// +---------------+ | / + | | // | // + | | /// | // + | | /// | / + | | /// | // + | | // | / + | | /// | // + | | // | | + | | // | | + | | // | | + | | // | | + +-------------------|------------------------------------------------/-----------------------------------------------------------------------------------+ | + | // | + | // | + | // | + | | | + | | | + | | | + | | | + | | | + | | | + | | | + | // | + | //// | + | /// | + | /// | + | //// | + | /// | + |/ /// | + /////// | + /// //// | + //// //// | + /// /// | + /// //// | + //// //// | + /// /// | + //// //// | + /// //// | + /// //// | + //// /// | + /// //// | + /// //// | + //// +-----------------------------------------//----------------------------------------------------------------------------------------------------|--+ + |/ | | + | | | + | | | + | | | + | | | + | | | + | | | + | | +----------------------------------+ | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + | | | | | + +-------|-------+ | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | | | + | | | | ## **Timeline mixer** | | + | | | - Inject ads, who-to-follow, onboarding | + | Home mixer | | | - Conversation module | | + | | | | - Cursoring,pagination | | + | | | | - Tweat deduplication | | + | | | | - Served data logging | | + /| | | | | | + // | | | | | | + // /| | | | | | + // / | | | | | | + // // +---------------/ | | | | + // / | | | | / | | | | + // / | | | | / | | | | + // // | | | | / | | | | + // / | | | | / | | | | + // / | | | | / | | | | + // // | | | | / | | | | + // / | | | | / | | | | + // / | | | | / | | | | + // // | | | | / | | | | + // / | | | | / | | | | + // / | | | | / | | | | + // // | | | | / | | | | + // / | | | | / | | | | + // / | | | | / | | | | + // // | | | | / | | | | + // / | | | | / | +----------------------------------+ | + // / | | | | / | | + // // | | | | / | | + // / | | | | / | | + // / | | | | / | | + // // | | | | / | | + |/ / | | | | / | | + | | | | | | | +--------------------------------------------------------------------------------------------------------------------------------------------------+ + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | | | | | | | | + | | | | | | / / | | | | | + | | | | | | / / | | | | | + | | | | | | // // | | | | | + | | | | | | / | | | | | + | | | | | | / / | | | | | + | | | | | | / / | | | | | + | | | | | | // / | | | | | + | | | | | | / // | | | | | + | | | | | | / / | | | | | + | | | | | | // / | | | | | + | | | | | | / | | | | | + | | | | | / | //| | | | | +--------------+ + | | | | | / | |/ | | | | | | + | | | | | // | | / | | | | | | + | | | | | / | | / +------------+ | +---------------+ +-------------------+ | | + | | | | | / | | / | | | | | | | | | ++--------------+ +---------------+ +--------------+ +--------------+ +-------------------+ +----------------+ // | | +------------+ | | | | | | +| | | | | | | | | | | | /| | | | | | | | | | +| | | | | | | | | | | | / | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | | | | | | | | | | +| | | | | | | | | | | | | Timeline | | | | Onboarding | | People discovery | | Fetch | +| Tweety Pie | | Social graph | | Gizmoduck | | Manhattan | | Timeline Service | | Home Ranker | | Scorer | | Ad mixer | | service | | service | | | +| | | | | | | | | | | | | | | | | | | | | // | +| | | | | | | | | | | | | | | | | | | | /// | +| | | | | | | | | | | | | | | | | | | | ///| | +| | | | | | | | | | | |// | | | | | | | |//// | | +| | | | | | | | | | | | // | | | | | | | /// | | +| | | | | | | | | | | | // | | | | | | | /// | | | +| | | | | | | | | | | | // | | | | | | /// | | | ++--------------+ +---------------+ +--------------+ +--------------+ +-------------------+ +------|---------+ |/// | +------------+ | | | /// | | | + | | // | | | | //// | | | + | +-----//-----+ +---------------+ +-///---------------+ | | + | // /// | | + | /// /// +--------|-----+ + | // /// | + | // //// | + | /// /// | + | // /// | + | // /// | + | // /// | + | /// //// | + | // /// | + | // /// | + | // // | + | // / | + | //// / | + | /// / | + | //// // | + | /// / | + | //// / | + | /// / | + | //// / | + | /// / | + | //// / | + | /// / | + | //// / | + | //// // | + | /// / | + | //// / | + |/// / | + ///| / | + /// | / | + //// | / | + /// | / | + //// | // | + /// | / | + //// | / | + |/ | / | + | | // | + | | // | + | | /// | + | | /// | + | | // | + | +-------|----------------------------------------///---------------------------------------------------------------------+ | + | | | // | | + | | | /// | + | | | /// | +----------------+ + | | | // | | | + | | | /// | | | + | | | /// | | | + | | | // | | | + +----------------+ | +-----------+ /// +------------+ +--------+ +---------+ +----------------+ | | | + | | | | | // | | | | | | | | | | | + | | | | | /// | | | | | | | | | | | + | | | | | /// | | | | | | | | | | | + | | | | | // | | | | | | | | | | | + | | | | // | | | | | | | | | | | + | | | | | | | | | | | | | | | | + | | | | | | | | | | | | | | | Feature | + | Home Scorer | | | CrMixer | | EarlyBird | | Utag | | Space | | Communities | | | | + | | | | | | | | | | | | | | | | + | | | | | | | | | | | | | | | | + | | | | | | | | | | | | | | | / | + | | | | | | | | | | | | | | |// | + | | | | | | | | | | | | | | // | + | | | | | | | | | | | | | | / | | + | | | | | | | | | | | | | | // | / | + +---|--||---|----+ | +-----------+ +------------+ +--------+ +---------+ +----------------+ | // |/ | + | || | | | / / | + | || | | | // /| | + | || | | | / / | | + | | | | | | // / +--|--------|----+ + | | | | | | // / | | + | | | | | | / / | | + | || | +------------------------------------------------------------------------------------------------------------------------+ // / | | + | || | // / | | + | || | / / | | + | | | | // / | | + | | | | // / | | + | | | | | / | | + / | / / | | | | + / | / / | | | | + / | / // | | | | + / | / / | | | | + / | // / | | | | + / | / // | | | | + / | / / | | | | + / | / / | | | | + /| / / | | | | + / / // | | | | + |/ / / | | | | + | / / / | | | | + | / // // | | | | + | / / / | | | | + | / / / | | | | + | / / / | | | | + | / / // | | | | + | / / / | | | | + | / / / | | | | + | / / / | | | | + | / / // | | | | + | / // / | | | | + | / / / | | | | + | / / // | | | | + | / / / | | | | + | /// /// /// | | | | + | //// ///// ///// | | | | + | ///// //// ////// | | | | + | //// ///// ///// | | | | + | //// ///// ///// | | | | + | ///// ///// ///// | | | | + | //// //// ///// | | | | + | ///// ///// ////// | | | | + | //// ///// ///// | | | | + +-------|-------+ //// ///// ///// | | | | + | | ///// //// ///// | | | | + | | //// ///// ////// | | | + | | ///// ///// ///// | | | + | | //// //// ///// | | | +----------------+ + | | ///// ///// ///// | +--------------|--+ | | | + | | //// ///// ///// | | | | | | + | | //// ///// ////// | | | | | | + | | ///// //// +---------/|/// | | +--------|-----+ | | + | | //// ///// | | ///// | | | | | + | | ///// ///// | | ///// | | | | | + | | //// |///// | | ///// | | | | | + | | //// | ////| | ////// | | | | + | | ///// | ///// | |///// | | | | + | | //// | | /// | /// | | | + | | /// | | | | | | | + Prediction Service | ...etc | | Memcache | | Manhattan | | Scoring | + | | | | | | | | | | + | | | | | | | | | | + | | | | | | | | | | + | | | | | | | | | | + | | | | | | | | | | + | | | | | | | | | | + | | | | | | | | | | + | | +---------+ | | +--------------+ | | + | | | | | | + | | | | | | + | | | | | | + | | +-----------------+ | | + | | +-------|--------+ + | | | + | | | + +---------------+ | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +-------|-------+ + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + Prediction Service + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + | | + +---------------+ diff --git a/docs/examples/vector-grid/vector-grid.txt b/docs/examples/vector-grid/vector-grid.txt index 90bb8aca7..50bd9979b 100644 --- a/docs/examples/vector-grid/vector-grid.txt +++ b/docs/examples/vector-grid/vector-grid.txt @@ -1,311 +1,261 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | +----------------------------------------------------------------------------------------------------------------------------------------+ +------------------------------------+ | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | Random Matrix Generator | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | | | | | | - | +----------------------------------------------------------------------------------------------------------------------------------------+ +-----------------/------------------+ | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - +----------------------------------------------------------------------------------------------------------------------------------------------------------------------/---------------------------------------------------------------------------------------------------------------------------------------------+ - / - / - / - / - / - / - / - / - / - +----------------------------------------------------------------------------------------------------------------------------------------------------------------------/---------------------------------------------------------------------------------------------------------------------------------------------+ - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | / | - | +-----------------------------------------------------------------------------------+ +---------------------------+ +-----------------------------------/----------------------------+ +-----------+ +-----------------------------------------------------------------------------------+ | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | | | / | | | | | | - | | | | +------------+ | | / | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | | | | | | | | | | | | | - | | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | | +-----------++-----------+-----------++-----------+ | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | 0.62 | 0.15 |-------------zen V|------------- 0.91 || 0.48 | | | | | | | | 0.41 || 0.32 | 0.92 || 0.13 | | | | | | 0.62 | 0.15 |-------------zem Ve-------------- 0.91 | 0.48 | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | +------------+ | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | +-----------++-----------+-----------++-----------+ | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | - | | | | | | | || | || | | | | | | | - | | | | +---------+ | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | +-+ | | | | || | || | | | | | | | - | | | | | | | | | | | || | || | | | | | | | - | | | | Dot |r|duct | | | 0.74 || 0.15 | 0.53 || 0.21 | | | | | | | - | | | | | | | | | | | || | || | | | | | | | - | | | | | | | | | | | || | || | | | | | | | - | | | | | +-+ | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | | | | | | | | || | || | | | | | | | - | | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | | | || | || | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | +---------+ | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | +-----------++-----------+-----------++-----------+ | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | ----------------------- | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | 0.62 | 0.15 |-------------zen V|------------- 0.91 || 0.48 | | | | | | || | || | | | | | | 0.62 | 0.15 |-------------zem Ve-------------- 0.91 | 0.48 | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | 0.97 || 0.45 | 0.11 || 0.05 | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | || | || | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | +-----------++-----------+-----------++-----------+ | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | | | | | | || | || | | | | | | | - | | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | || | || | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | 0.61 || 0.77 | 0.59 || 0.83 | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | 0.62 | 0.15 || n-s|zen V||tor | 0.91 || 0.48 | | | | | | || | || | | | | | | 0.62 | 0.15 || m-s|zem Ve|tor || 0.91 | 0.48 | | | - | | | | |------------- |------------- || | | | | | | || | || | | | | | | | |------------- -------------- | | | | - | | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | +-----------++-----------+-----------++-----------+ | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | | | || | || | || | | | | | | | | | | | || | | || | | | | - | | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | | | | | | | | | | | | - | +-----------------------------------------------------------------------------------+ +---------------------------+ +----------------------------------------------------------------+ +-----------+ +-----------------------------------------------------------------------------------+ | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - | | - +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - - - - - - - - - - - - - - - - - - - - - - - - - ++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| +----------------------------------------------------------------------------------------------------------------------------------------+ +------------------------------------+ | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | Random Matrix Generator | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| | | | | | +| +----------------------------------------------------------------------------------------------------------------------------------------+ +-----------------|------------------+ | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | ++----------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------+ + | + | + | + | + | + | + | + | + | ++----------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------+ +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| | | +| +-----------------------------------------------------------------------------------+ +---------------------------+ +-----------------------------------|----------------------------+ +-----------+ +-----------------------------------------------------------------------------------+ | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | | | | | | | | | | +| | | | +------------+ | | | | | | | | | +| | | | | | | | | | | | | | +| | | | | | | | | | | | | | +| | | | | | | | | | | | | | +| | | | | | | | | | | | | | +| | | | | | | | | | | | | | +| | | | | | | | | | | | | | +| | | | | | | | | | | | | | +| | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | | +-----------++-----------+-----------++-----------+ | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | 0.62 | 0.15 |-------------zen V|------------- 0.91 || 0.48 | | | | | | | | 0.41 || 0.32 | 0.92 || 0.13 | | | | | | 0.62 | 0.15 |-------------zem Ve-------------- 0.91 | 0.48 | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | +------------+ | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | +-----------++-----------+-----------++-----------+ | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | +| | | | | | | || | || | | | | | | | +| | | | +---------+ | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | +-+ | | | | || | || | | | | | | | +| | | | | | | | | | | || | || | | | | | | | +| | | | Dot |r|duct | | | 0.74 || 0.15 | 0.53 || 0.21 | | | | | | | +| | | | | | | | | | | || | || | | | | | | | +| | | | | | | | | | | || | || | | | | | | | +| | | | | +-+ | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | | | | | | | | || | || | | | | | | | +| | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | | | || | || | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | +---------+ | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | +-----------++-----------+-----------++-----------+ | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | ----------------------- | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | 0.62 | 0.15 |-------------zen V|------------- 0.91 || 0.48 | | | | | | || | || | | | | | | 0.62 | 0.15 |-------------zem Ve-------------- 0.91 | 0.48 | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | 0.97 || 0.45 | 0.11 || 0.05 | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | || | || | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | +-----------++-----------+-----------++-----------+ | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | | | | | | || | || | | | | | | | +| | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | || | || | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | 0.61 || 0.77 | 0.59 || 0.83 | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | 0.62 | 0.15 || n-s|zen V||tor | 0.91 || 0.48 | | | | | | || | || | | | | | | 0.62 | 0.15 || m-s|zem Ve|tor || 0.91 | 0.48 | | | +| | | | |------------- |------------- || | | | | | | || | || | | | | | | | |------------- -------------- | | | | +| | | | || | || | || | | | | | | || | || | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | +-----------++-----------+-----------++-----------+ | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | | | || | || | || | | | | | | | | | | | || | | || | | | | +| | +--------+--------++-----------+-----++-----------+--------++--------+ | | | | | | | | +--------+--------++-----------+------+-----------++--------+--------+ | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| | | | | | | | | | | | +| +-----------------------------------------------------------------------------------+ +---------------------------+ +----------------------------------------------------------------+ +-----------+ +-----------------------------------------------------------------------------------+ | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | +| | ++--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/docs/flow.txt b/docs/flow.txt index 924276a21..380dd86c7 100644 --- a/docs/flow.txt +++ b/docs/flow.txt @@ -1,358 +1,307 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - +------------+ - | | - | | - | | - | | - | | - | | - | | - | inputFile | - | | - | | - | | - | | - | | - | | - | | - +------|-----+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +------|-----+ - | | - | | - | | - | | - | | - | | - | | - | d2parser | - | | - | | - | | - | | - | | - | | - | | - +------------+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +----|----+ - | | - | | - | | - | | - | | - | | - | | - | d2ast | - | | - | | - | | - | | - | | - | | - | | - +----|----+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +-------|------+ - | | - | | - | | - | | - | | - | | - | | - | d2compiler | - | | - | | - | | - | | - | | - | | - | | - +--------------+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +-----|------+ - | | - | | - | | - | | - | | - | | - | | - | d2graph | - | | - | | - | | - | | - | | - | | - | | - +-----|------+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +-------------|-------------+ - | | - | | - | | - | | - | | - | | - | | - | d2layouts/d2dagrelayout | - | | - | | - | | - | | - | | - | | - | | - +---------------------------+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +-------|------+ - | | - | | - | | - | | - | | - | | - | | - | d2exporter | - | | - | | - | | - | | - | | - | | - | | - +-------|------+ - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - +-----|------+ - | | - | | - | | - | | - | | - | | - | | - | d2target | - | | - | | - | | - | | - | | - | | - | | - +------------+ - - - - - - - - - - - - - - - - - - - - - - - - - - + +------------+ + | | + | | + | | + | | + | | + | | + | | + | inputFile | + | | + | | + | | + | | + | | + | | + | | + +------|-----+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +------|-----+ + | | + | | + | | + | | + | | + | | + | | + | d2parser | + | | + | | + | | + | | + | | + | | + | | + +------------+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +----|----+ + | | + | | + | | + | | + | | + | | + | | + | d2ast | + | | + | | + | | + | | + | | + | | + | | + +----|----+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +-------|------+ + | | + | | + | | + | | + | | + | | + | | + | d2compiler | + | | + | | + | | + | | + | | + | | + | | + +--------------+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +-----|------+ + | | + | | + | | + | | + | | + | | + | | + | d2graph | + | | + | | + | | + | | + | | + | | + | | + +-----|------+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | ++-------------|-------------+ +| | +| | +| | +| | +| | +| | +| | +| d2layouts/d2dagrelayout | +| | +| | +| | +| | +| | +| | +| | ++---------------------------+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +-------|------+ + | | + | | + | | + | | + | | + | | + | | + | d2exporter | + | | + | | + | | + | | + | | + | | + | | + +-------|------+ + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + | + +-----|------+ + | | + | | + | | + | | + | | + | | + | | + | d2target | + | | + | | + | | + | | + | | + | | + | | + +------------+