126 Commits

Author SHA1 Message Date
Loris Cro
b32e5a14ce autodoc: handle self-referential call+field_type instructions 2022-08-23 18:45:22 +02:00
Loris Cro
0482e8ba9d autodoc: initial support for struct_init_anon 2022-08-23 18:37:29 +02:00
Der Teufel
a022157956 autodoc: compileError now uses index into exprs instead of a []const u8 2022-08-21 05:29:39 +02:00
Loris Cro
53e971226d autodoc: minor pr cleanup 2022-08-18 18:02:19 +02:00
Der Teufel
f0bfdf9766 Fixed stage1 compilation error 2022-08-18 15:33:56 +02:00
Der Teufel
656b9429d0 autodoc: An attempt at generating HTML files from all imported source
files. Files generated from the standard library could be considered
for placing with main.js and index.html in lib/docs. Paths should
reflect packages in the future.
2022-08-18 14:03:42 +02:00
Loris Cro
7f7d58ee89
Merge branch 'master' into autodoc-links 2022-08-16 16:52:26 +02:00
Isaac Freund
0d32b73078
stage2: Implement explicit backing integers for packed structs
Now the backing integer of a packed struct type may be explicitly
specified with e.g. `packed struct(u32) { ... }`.
2022-08-10 19:54:45 +02:00
Veikka Tuominen
0778490283 AutoDoc: update to Zir call inst changes 2022-08-09 19:26:40 +03:00
Veikka Tuominen
d769fd0102 stage2: pass anon name strategy to reify 2022-08-08 18:28:39 -07:00
Maciej 'vesim' Kuliński
a0a1178694 autodoc: links to source code 2022-08-08 21:42:38 +02:00
Loris Cro
55ec2148fd autodoc: fix analysis of function return types 2022-08-04 23:24:18 +02:00
Loris Cro
4c750016eb autodoc: inferred error unions in function return values 2022-08-03 17:21:56 +02:00
Loris Cro
447a4cc115 autodoc: fix off-by-1 error in analysis of pointer types 2022-08-02 17:49:36 +02:00
Loris Cro
c5afefec42 autodoc: fix autodoc analysis for @typeInfo
We were previously erroneously saving it as a `@TypeOf`.
2022-08-02 17:49:36 +02:00
Loris Cro
e863292fe2 autodoc: no whitespace in json output for release builds
With this change, stdlib autodocs go from 24mb to 16mb (-8mb).
2022-07-28 15:08:58 +02:00
Andrew Kelley
a035d75a17 Autodoc: update to new ZIR
Fixes a merge conflict with 8e75ba653b03477229cf72211e8a8bfe7b071254
which removed ptr_type_simple and added overflow_arithmetic_ptr.
2022-07-22 21:24:19 -07:00
Loris Cro
92966088c2 autodoc: cleanup file-related operations 2022-07-21 16:31:45 +02:00
Loris Cro
d74a49456d autodoc: use already open handles to output docs artifacts 2022-07-21 14:17:25 +02:00
Loris Cro
268edce862 Autodoc: fix int expr size for 32bit targets 2022-07-20 08:34:05 +02:00
Andrew Kelley
42b2fb4c5d Autodoc: stage2 miscompilation workaround
There is no issue open for this yet; I will file one after pushing this
commit.
2022-07-19 19:55:12 -07:00
Andrew Kelley
8df1b91d17 Autodoc: clean up debug printing
use std.log.scoped
2022-07-19 19:10:12 -07:00
Andrew Kelley
84adbeb077 Autodoc: update to new array_type ZIR 2022-07-19 19:10:12 -07:00
Andrew Kelley
22d61faf17 Autodoc: update to new ZIR encoding
* error_to_int, int_to_error moved to extended
 * struct field encodings are different
2022-07-19 19:10:12 -07:00
Loris Cro
8ec34eb046 autodoc: handle result location instructions 2022-07-19 19:10:12 -07:00
Loris Cro
947eff6e39 autodoc: handle special case of autodoc for std 2022-07-19 19:10:12 -07:00
Loris Cro
54fe5ea4f3 autodoc: add support for new func-related Zir 2022-07-19 19:10:12 -07:00
Vallahor
341431b15c autodoc: handling more values sections 2022-07-19 19:10:12 -07:00
Loris Cro
24a79426ec autodoc: update array analysis to new Zir 2022-07-19 19:10:12 -07:00
Vallahor
e7476fd81c autodoc: handling refPath and fieldRef 2022-07-19 19:10:12 -07:00
Vallahor
81147dd101 autodoc: initial work in opaque_decl 2022-07-19 19:10:12 -07:00
Loris Cro
dd4bd55ef6 autodoc: rework json printing code
We're now using `std.json.writeStream`, which makes our prints correct
in terms of escapes and also reduces the amount of json-related code.
Unfortunately, we have to mess around with the json stream writer state
whenever we end up using `std.json.stringify` for convenience.
2022-07-19 19:10:12 -07:00
Vallahor
02bd5fe93a autodoc: experiment get line info 2022-07-19 19:10:12 -07:00
Loris Cro
cd357fc767 autodoc: fix package issue when analyzing stdlib 2022-07-19 19:10:12 -07:00
Loris Cro
d2baf404a5 autodoc: enabled packages 2022-07-19 19:10:12 -07:00
Loris Cro
a5e7b0e4db autodoc: restore support for zig version + cleanup & init work to fix packages 2022-07-19 19:10:12 -07:00
Vallahor
20b861d805 autodoc: fixing a bug in builtin functions when the typeRef is null 2022-07-19 19:10:12 -07:00
Vallahor
f189e46b8e autodoc: add some tags 2022-07-19 19:10:12 -07:00
Vallahor
f13db1ce18 autodoc: add cmpxchg_strong/weak 2022-07-19 19:10:12 -07:00
Vallahor
4530b446b1 autodoc: @check array_cat and array_mul 2022-07-19 19:10:12 -07:00
Vallahor
5e52666c83 autodoc: add some builtin functions and float128 2022-07-19 19:10:12 -07:00
Vallahor
9613aca417 autodoc: refactoring binOp 2022-07-19 19:10:12 -07:00
Loris Cro
06ee275295 autodoc: fix crash when handling siwtch_block instructions 2022-07-19 19:10:12 -07:00
Vallahor
dd9a018185 fix: slice_start, slice_end and slice_sentinel typeRef are now showing the slice type 2022-07-19 19:10:12 -07:00
Vallahor
1f5df0e034 add: slice_start, slice_end and slice_sentinel 2022-07-19 19:10:12 -07:00
Vallahor
b9fa91002e add: builtins functions 2022-07-19 19:10:12 -07:00
Vallahor
a0ec87be71 add: merge_error_sets and @alignOf() need a checkin to confirm it's fully work 2022-07-19 19:10:12 -07:00
Loris Cro
d858f26139 autodoc: fixes to generic fn support plus linking support 2022-07-19 19:10:12 -07:00
Loris Cro
413cfd4066 autodoc: init generic function support 2022-07-19 19:10:12 -07:00
Loris Cro
51647c305e autodoc: add buffering to the json writer 2022-07-19 19:10:12 -07:00