Arthur Baars
3fdc49c4cb
Rename Literal, Type, and BinExpr
2024-09-13 18:33:55 +02:00
Arthur Baars
661a4e07be
Merge remote-tracking branch 'upstream/main' into aibaars/rust-doc-tests
2024-09-13 17:31:38 +02:00
Arthur Baars
d73d90dba2
Avoid use of plain 'None' in tests
...
For some reason the parser resolves the ambiguity between None as a PathPat or IdentPat
differently on the Action runners vs local machine.
2024-09-13 12:48:58 +02:00
Arthur Baars
e68229892e
Add some more QL docs
2024-09-13 11:48:36 +02:00
Arthur Baars
d99c2031ac
Workaround nameclash in dbscheme generator
2024-09-13 11:07:02 +02:00
Arthur Baars
8dcf93d065
Make class names match rust.ungram
...
811905fce8/crates/syntax/rust.ungram
2024-09-13 10:51:11 +02:00
Arthur Baars
452424a0d2
Fix tests for Path and TypeRef
2024-09-13 10:25:36 +02:00
Arthur Baars
197fb04184
Improve docs
2024-09-13 10:16:34 +02:00
Arthur Baars
c825ae4eab
Add some examples for some of the unimplemented nodes
2024-09-12 22:18:02 +02:00
Arthur Baars
7572546efa
Improve handling of unimplemented nodes
2024-09-12 22:17:39 +02:00
Arthur Baars
69761a2942
Rust: AST: add docs with examples for qltest
2024-09-12 19:54:37 +02:00
Arthur Baars
292c6b6159
Clear out unused comments
2024-09-12 17:58:17 +02:00
Arthur Baars
2a88086544
Rust: AST: add docs with examples for qltest
2024-09-12 17:58:15 +02:00
Paolo Tranquilli
b4b680775c
Rust: integrate into standard files+location library
2024-09-12 13:17:10 +02:00
Arthur Baars
a5d1d9e167
Make implementation more complete
...
Use Unimplemented to mark AstNodes that need implementing
2024-09-10 14:13:05 +02:00
Arthur Baars
b2451c6667
Improve schema
2024-09-10 12:26:54 +02:00
Arthur Baars
86215b4f02
Rename IfLet to IfStmt
2024-09-09 13:33:17 +02:00
Arthur Baars
b40476423b
Rust: schema.py add '| child' markers
2024-09-09 13:29:45 +02:00
Paolo Tranquilli
10a23c0843
Merge branch 'rust-experiment' into redsun82/rust-doctest-gen
2024-09-09 12:20:55 +02:00
Arthur Baars
1a9b2329f4
Add SlicePat::{slice, suffix}
2024-09-06 19:27:35 +02:00
Arthur Baars
406d03edfc
Rename IfLet::else_branch to IfLet::else_
2024-09-06 18:40:03 +02:00
Arthur Baars
e8277015ab
Add subclasses for Array
2024-09-06 18:23:01 +02:00
Arthur Baars
69b05e835c
Add fields for OffsetOf
2024-09-06 18:17:15 +02:00
Arthur Baars
75113367c9
Add InlineAsm::expr
2024-09-06 18:14:14 +02:00
Arthur Baars
bc6da117d2
Fix type of Closure::arg_types
2024-09-06 17:59:24 +02:00
Paolo Tranquilli
18c423eb55
Rust: fix formatting of code snippet in docstring
2024-09-06 14:27:57 +02:00
Paolo Tranquilli
6111a7497d
Rust: remove accidental schema annotation
2024-09-06 14:26:36 +02:00
Paolo Tranquilli
8c5cc2efdc
Rust: generate test code from schema docstrings
...
This generates test source files from code blocks in class docstrings.
By default the test code is generated as is, but it can optionally:
* be wrapped in a function providing an adequate context using
`@rust.doc_test_function(name, *, lifetimes=(), return_type="()", **kwargs)`,
with `kwargs` providing both generic and normal params depending on
capitalization
* be skipped altogether using `@rust.skip_doc_test`
So for example an annotation like
```python
@rust.doc_test_function("foo",
lifetimes=("a",),
T="Eq",
x="&'a T",
y="&'a T",
return_type="&'a T")
```
will result in the following wrapper:
```rust
fn foo<'a, T: Eq>(x: &'a T, y: &'a T) -> &'a T {
// example code here
}
```
2024-09-06 14:24:42 +02:00
Arthur Baars
a33c7703cd
Add Label class
2024-09-06 12:42:43 +02:00
Arthur Baars
e14b626917
Add 'BlockBase' class
2024-09-06 12:15:35 +02:00
Arthur Baars
ce2fdb3463
Address comments
2024-09-06 11:47:08 +02:00
Arthur Baars
76c35bec93
Rust: add Expr, Pat, Stmt to schema
2024-09-05 16:59:28 +02:00
Paolo Tranquilli
590a146b49
Rust: some basic extraction of function names (with locations!)
2024-08-29 17:58:50 +02:00