binrw icon indicating copy to clipboard operation
binrw copied to clipboard

Master WIP Todo List

Open jam1garner opened this issue 5 years ago • 1 comments

  • [x] Cleanup binread derive code
  • [ ] no_std std::io reimplementation
    • [x] Error
    • [x] Result
    • [ ] Buffering types?
      • [ ] BufReader
      • [ ] BufWriter
    • Probably no need to add BufRead trait
    • [x] Read
      • [x] read_exact
      • [x] read_to_end
      • [x] bytes
      • [x] by_ref
      • [x] take
      • [ ] chain
      • ~~initializer?~~ - not stable
      • ~~is_read_vectored?~~ - not stable
      • [x] read_to_string
      • [ ] read_vectored?
    • [x] Write
      • [x] by_ref
      • [x] flush
      • ~~is_write_vectored?~~ - not stable
      • [x] write_all
      • ~~write_all_vectored?~~ - not stable
      • [x] write_fmt
      • [ ] write_vectored?
    • [x] Seek
    • [x] SeekFrom
    • [ ] Discuss what else in std::io we want to support
  • [x] BinWrite trait
    • [x] Design trait
      • [ ] after_parse?
      • [x] Arguments design
    • [x] Implement for primitives
    • [ ] Implement for built-in types
      • [x] NullString
      • [x] NullWideString
      • [ ] Punctuated
  • [x] BinWrite derive macro rewrite
    • [x] Port BinWrite attributes over
      • [x] pad_after
      • [x] pad_before
      • [x] little
      • [x] big
      • [x] ignore
      • [x] with (replaced)
      • [x] preprocessor (replaced)
      • [x] postprocessor (replaced)
      • [x] align_before
      • [x] align_after
    • [x] Parsing code
    • [x] #41
  • [x] Attribute unification
    • [x] Limit the attributes usable with brw
    • [x] Add brw attribute
      • [x] Support for BinRead
      • [x] Support for BinWrite
      • [x] Add #[binrw] attribute macro
    • [x] Decide which attributes should be merged
      • [x] parse_with (br) vs with (bw) - parse_with/write_with
      • [x] map (br) vs preprocessor (bw) - map
  • [x] Rewrite documentation
    • [x] Replace "binread" with "binrw"
    • [x] #54
    • [x] Adjust for named arguments
  • [x] Remove all unsafe
  • [x] Implement named arguments
    • [x] Add typed builders
      • [x] Add types for constraining builder
      • [x] Add builder codegen
    • [x] Add codegen for using typed builders]
  • [ ] "Hex editor debugging"
  • [x] #65

jam1garner avatar Mar 15 '21 20:03 jam1garner

Another thing to add: "verify links": https://docs.rs/crate/binrw/attribute <- is referenced under "Directives" on docs.rs but the link path is broken.

dmgolembiowski avatar Sep 29 '21 21:09 dmgolembiowski