A4-Tacks
A4-Tacks
Could it be that multiple asynchronous completion mechanisms are simultaneously completing characters, but the different lengths of the text result in incorrect deletion of characters?
When containing deep nesting, it is very difficult to read without using patterns to untangle it
Allowing side effects may not be a good choice, considering attempting failure after side effects occur. You can use `Cell` or `RefCell` If mut is allowed, it is also easy...
Consider this code with logical errors due to side effects: ```rust peg::parser!( grammar space_counter() for str { pub rule run(space_count: &std::cell::RefCell) -> i32 = (needs_mutable_borrw(&mut space_count.borrow_mut()) "." /needs_mutable_borrw(&mut space_count.borrow_mut()) ";"...
Reference this implement: https://github.com/jqlang/jq/blob/205b3a2d75c7dec0e9c71f262e76219b44176b01/src/builtin.jq#L95-L101
It seems that the usage rate is very low, and I couldn't find it in the document either It seems to be an internal feature
Will this be added to the builtin.jq?
 It's strange why there are 4 lines change in undo
A similar case, but it works ```rust fn main() { if true { } else { } } ```
Another example of reproduction: ```rust mod r#type { pub(crate) fn foo() {} } fn main() { r#type::foo(); } ``` 1. Cursor on `foo` apply `Replace qualified path with use` 2....