Expose stuff #8
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Yehowshua/FastWaveBackend#8
Loading…
Reference in a new issue
No description provided.
Delete branch "expose_stuff"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
These are the changes I need for my experimental vcd viewer so far:
byte_len_of_string_tmstmp_vals_on_tmln.push(curr_tmstmp_len_u8);
fixes a panic when indexing into string values@ -9,3 +9,3 @@
pub use vcd::types::{Metadata, Timescale, Version};
pub use vcd::signal::{Signal};
pub use vcd::signal::{Signal, SignalValue};
OK - I see why you wanted to expose SignalValue:
bde4c76b5e/src/translation/pytranslator.rs (L69)
That's not actually how I intended the API to be used... It's OK that you use it that way - I hadn't completed this project nor provided full example. What I probably had in mind was that Signal would always return a string, either of digits, or alphanumeric characters since the VCD viewer likely doesn't care about the actual numerical value.
Does waveview need to know about that actual values, or would accepting strings be OK?
It's also possible I hadn't entirely thought this through...
I can see a case where you might wish to display typing information in the waveform viewer itself.
I'm not so sure that we can just ignore errors - my original intent in capturing them was to log them to perhaps some sort of logger buffer. That way, a given VCD viewer could pull up an error logger.
I think some of the VCD example I had for unit testing had aliases in them...
I'm not sure this can just be left unimplemented
I suppose not including the range in the signal name makes sense. I suppose that when I started working on Fastwave, I had assumed there'd be a tighter coupling between the frontend viewer and the backend.
Was including the range causing issues for you?
It was, yes. The translation stuff i'm doing in python relies on the names being there in their pure form, and if I read the spec, it seems like the [] enclosed stuff shouldn't be included in the identifier
I'm open to actually saving them, but I forgot to do that before pushing btw
I made another change to make the whole lib generic over the io::Read implementation, which allows it to be used with https://docs.rs/progress-streams/latest/progress_streams/ (and I guess any other weird streams we can think of)