Skip to content

Commit 93dbb4b

Browse files
committed
refactor: separate core type definitions by module
1 parent 49f1b83 commit 93dbb4b

7 files changed

Lines changed: 45 additions & 50 deletions

File tree

lua/tirenvi/core/attr.lua

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,19 @@ local log = require("tirenvi.util.log") -- Util
99

1010
-- =============================================================================
1111

12+
---@class Attr
13+
---@field range Range|nil
14+
---@field wrap_mode WrapMode|nil
15+
---@field fit_span integer
16+
---@field columns Attr_column[]
17+
---@field prefix string|nil
1218
local M = {}
1319
M.plain = {}
1420
M.grid = {}
1521

22+
---@class Attr_column
23+
---@field width integer display width (logical column width)
24+
1625
-- =============================================================================
1726
--#region Private
1827

lua/tirenvi/core/block.lua

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,25 @@ local log = require("tirenvi.util.log")
1010

1111
-- =============================================================================
1212

13+
---@alias Block
14+
---| Block_plain
15+
---| Block_grid
1316
local M = {}
17+
18+
---@alias Block_kind
19+
---| "plain"
20+
---| "grid"
21+
22+
---@class Block_plain
23+
---@field kind "plain"
24+
---@field attr Attr
25+
---@field records Record_plain[]
1426
M.plain = {}
27+
28+
---@class Block_grid
29+
---@field kind "grid"
30+
---@field attr Attr
31+
---@field records Record_grid[]
1532
M.grid = {}
1633

1734
-- =============================================================================

lua/tirenvi/core/blocks.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ local log = require("tirenvi.util.log")
1212

1313
-- =============================================================================
1414

15+
---@alias Blocks Block[]
1516
local M = {}
1617

1718
-- =============================================================================

lua/tirenvi/core/cell.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ local log = require("tirenvi.util.log")
77

88
-- =============================================================================
99

10+
---@alias Cell string
1011
local M = {}
1112

1213
M.MIN_WIDTH = 2

lua/tirenvi/core/document.lua

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -17,59 +17,9 @@ local log = require("tirenvi.util.log")
1717
---@field blocks Blocks
1818
local M = {}
1919

20-
---@alias Blocks Block[]
21-
22-
---@alias Block
23-
---| Block_plain
24-
---| Block_grid
25-
26-
---@alias Block_kind
27-
---| "plain"
28-
---| "grid"
29-
30-
---@class Block_plain
31-
---@field kind "plain"
32-
---@field attr Attr
33-
---@field records Record_plain[]
34-
35-
---@class Block_grid
36-
---@field kind "grid"
37-
---@field attr Attr
38-
---@field records Record_grid[]
39-
40-
---@class Attr_file
41-
---@field kind "attr_file"
42-
---@field version string
43-
4420
---@class Attr_doc
4521
---@field allow_plain boolean
4622

47-
---@class Attr
48-
---@field range Range|nil
49-
---@field wrap_mode WrapMode|nil
50-
---@field fit_span integer
51-
---@field columns Attr_column[]
52-
---@field prefix string|nil
53-
54-
---@class Attr_column
55-
---@field width integer display width (logical column width)
56-
57-
---@alias Record Record_plain|Record_grid
58-
59-
---@class Record_plain
60-
---@field kind "plain"
61-
---@field line string
62-
63-
---@class Record_grid
64-
---@field kind "grid"
65-
---@field prefix string|nil
66-
---@field row Cell[]
67-
---@field _has_continuation? boolean true if this record continues to the next row
68-
69-
---@alias Cell string
70-
71-
---@alias Ndjson Attr_file|Record
72-
7323
-- =============================================================================
7424
--#region Private
7525

lua/tirenvi/core/record.lua

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,19 @@ local log = require("tirenvi.util.log") -- Util
66

77
-- =============================================================================
88

9+
---@alias Record Record_plain|Record_grid
910
local M = {}
11+
12+
---@class Record_plain
13+
---@field kind "plain"
14+
---@field line string
1015
M.plain = {}
16+
17+
---@class Record_grid
18+
---@field kind "grid"
19+
---@field prefix string|nil
20+
---@field row Cell[]
21+
---@field _has_continuation? boolean true if this record continues to the next row
1122
M.grid = {}
1223

1324
-- =============================================================================

lua/tirenvi/types.lua

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,9 @@
1313
---| "wrap_fit"
1414
---| "wrap_width"
1515
---| "plain"
16+
17+
---@class Attr_file
18+
---@field kind "attr_file"
19+
---@field version string
20+
21+
---@alias Ndjson Attr_file|Record

0 commit comments

Comments
 (0)