Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/scrub interpreter #41

Draft
wants to merge 18 commits into
base: develop
Choose a base branch
from
Draft

Conversation

uberFoo
Copy link
Owner

@uberFoo uberFoo commented May 29, 2024

No description provided.

Copy link

codecov bot commented May 30, 2024

Codecov Report

Attention: Patch coverage is 35.64155% with 316 lines in your changes missing coverage. Please review.

Project coverage is 63.67%. Comparing base (1e7167e) to head (0aec3cd).

Files Patch % Lines
src/chacha/ffi_value.rs 17.64% 140 Missing ⚠️
src/bin/main.rs 0.00% 40 Missing ⚠️
src/bubba/vm.rs 62.62% 37 Missing ⚠️
src/bubba/compiler/expression/block.rs 32.07% 36 Missing ⚠️
src/bubba/compiler.rs 11.11% 24 Missing ⚠️
src/bubba/error.rs 0.00% 16 Missing ⚠️
src/bubba/value.rs 12.50% 7 Missing ⚠️
src/bubba/instr.rs 14.28% 6 Missing ⚠️
src/bin/dwarfc.rs 0.00% 5 Missing ⚠️
src/bubba/compiler/expression/call.rs 63.63% 4 Missing ⚠️
... and 1 more
Additional details and impacted files
@@             Coverage Diff             @@
##           develop      #41      +/-   ##
===========================================
- Coverage    69.91%   63.67%   -6.25%     
===========================================
  Files           86       52      -34     
  Lines        24915    20321    -4594     
===========================================
- Hits         17420    12939    -4481     
+ Misses        7495     7382     -113     
Flag Coverage Δ
unittests 63.67% <35.64%> (-6.25%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

uberFoo added 12 commits June 1, 2024 06:26
The counter stuff was messed up because Postgres
cares about the type you bind.
There is a fix for the sqlx plugin that specifies the type of
the thing being bound.

There is a fix for blessing tests. I needed to disable all the
noise that the extruder and compiler make.

There is an async block addition too. Now you can create async
blocks and await them:

```rust
fn main() {
    let x = async {
        let y = 1;
        y
    };
    let z = x.await;
    // This will print 1
    println!("{}", z);
}
```
`
Most especially for the async block.
Ran into this thing with FFi lists not having a type.
Sorted it out by giving it the option of a type.
Fixed the into value trait impl that's used after the
invoke_func call to use the type from the ffi list and
not the thing we pass in, which is a result.
Prior to this External Implementation blocks were output with no body.
Now this fix is sort of silly because I need to make EIs work.

But in addition if there is a block with no statements, we will now also
throw an error.
I'm on vacation. I worked on some stuff.
Some Cargo updating and some minor changes to the VM.
The `keys()` method used to return the keys in insertion order, but now
returns them in an arbitrary order. This messed up my shit. Now it's
fixed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant