mirror of
https://codeberg.org/icewind/bitbuffer.git
synced 2026-08-02 12:14:49 +02:00
cargo updates
This commit is contained in:
parent
b9330db6fa
commit
29063457f4
11 changed files with 241 additions and 128 deletions
|
|
@ -2,7 +2,7 @@
|
|||
name = "bitbuffer_derive"
|
||||
version = "0.11.3"
|
||||
authors = ["Robin Appelman <robin@icewind.nl>"]
|
||||
edition = "2018"
|
||||
edition = "2021"
|
||||
description = "Reading bit sequences from a byte slice"
|
||||
license = "MIT OR Apache-2.0"
|
||||
repository = "https://codeberg.org/icewind/bitbuffer"
|
||||
|
|
@ -12,11 +12,11 @@ name = "bitbuffer_derive"
|
|||
proc-macro = true
|
||||
|
||||
[dependencies]
|
||||
syn = { version = "2.0.98", features = ["extra-traits"] }
|
||||
syn = { version = "3.0.3", features = ["extra-traits"] }
|
||||
quote = "1.0.38"
|
||||
proc-macro2 = "1.0.93"
|
||||
structmeta = "0.3.0"
|
||||
merge = "0.2.0"
|
||||
structmeta = "0.4.0"
|
||||
merged = "0.3.0"
|
||||
|
||||
[dev-dependencies]
|
||||
bitbuffer = { version = "0.11", path = ".." }
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
use crate::params::parse_attrs;
|
||||
use crate::params::variant::VariantParam;
|
||||
use merge::Merge;
|
||||
use merged::Merge;
|
||||
use proc_macro2::{Ident, Span, TokenStream};
|
||||
use quote::quote;
|
||||
use structmeta::StructMeta;
|
||||
|
|
@ -8,7 +8,7 @@ use syn::{Attribute, DataEnum, Error, LitInt, Result};
|
|||
|
||||
#[derive(Default, StructMeta, Merge, Debug)]
|
||||
struct EnumAttrs {
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
discriminant_bits: Option<LitInt>,
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
use crate::params::{parse_attrs, Alignment, Size};
|
||||
use merge::Merge;
|
||||
use merged::Merge;
|
||||
use proc_macro2::{Ident, Span};
|
||||
use structmeta::StructMeta;
|
||||
use syn::spanned::Spanned;
|
||||
|
|
@ -7,11 +7,11 @@ use syn::{Expr, Field, Index, LitInt, Member, Result, Type};
|
|||
|
||||
#[derive(Default, StructMeta, Merge)]
|
||||
struct FieldAttrs {
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
size: Option<Expr>,
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
size_bits: Option<LitInt>,
|
||||
#[merge(strategy = merge::bool::overwrite_false)]
|
||||
#[merge(strategy = merged::bool::overwrite_false)]
|
||||
align: bool,
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ pub use crate::params::r#enum::EnumParam;
|
|||
pub use crate::params::r#struct::StructParam;
|
||||
pub use crate::params::variant::{VariantBody, VariantBodyType, VariantParam};
|
||||
use crate::{err, DeriveParams};
|
||||
use merge::Merge;
|
||||
use merged::Merge;
|
||||
use proc_macro2::{Ident, Span, TokenStream};
|
||||
use quote::{quote, quote_spanned, ToTokens, TokenStreamExt};
|
||||
use std::any::type_name;
|
||||
|
|
@ -141,9 +141,9 @@ impl ToTokens for Alignment {
|
|||
|
||||
#[derive(Default, StructMeta, Merge, Debug)]
|
||||
struct InputAttrs {
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
endianness: Option<LitStr>,
|
||||
#[merge(strategy = merge::bool::overwrite_false)]
|
||||
#[merge(strategy = merged::bool::overwrite_false)]
|
||||
align: bool,
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ use crate::discriminant::Discriminant;
|
|||
use crate::err;
|
||||
use crate::params::field::FieldParam;
|
||||
use crate::params::{parse_attrs, Alignment, Size};
|
||||
use merge::Merge;
|
||||
use merged::Merge;
|
||||
use proc_macro2::{Ident, Span};
|
||||
use std::convert::TryFrom;
|
||||
use structmeta::StructMeta;
|
||||
|
|
@ -11,13 +11,13 @@ use syn::{Expr, ExprLit, Fields, Lit, LitInt, Result, Variant};
|
|||
|
||||
#[derive(Default, StructMeta, Merge)]
|
||||
struct VariantAttrs {
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
size: Option<Expr>,
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
size_bits: Option<LitInt>,
|
||||
#[merge(strategy = merge::bool::overwrite_false)]
|
||||
#[merge(strategy = merged::bool::overwrite_false)]
|
||||
align: bool,
|
||||
#[merge(strategy = merge::option::overwrite_none)]
|
||||
#[merge(strategy = merged::option::overwrite_none)]
|
||||
discriminant: Option<Lit>,
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ fn sum_size_hint<T: SizeHint>(children: &[T], span: Span) -> TokenStream {
|
|||
let Some(first) = sizes.next() else {
|
||||
return quote!(Some(0));
|
||||
};
|
||||
quote_spanned!(span => #first#(.and_then(|prev: usize| if prev == #sizes? {
|
||||
quote_spanned!(span => #first #(.and_then(|prev: usize| if prev == #sizes? {
|
||||
Some(prev)
|
||||
} else {
|
||||
None
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue