Wolfgang Bumiller
be69408ca8
clippy fixups
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-06-10 11:54:10 +02:00
Wolfgang Bumiller
4d84aec490
clippy: don't explicitly drop args in generated code
...
While code seems to still compile, this was initially done
to explicitly get rid of potential borrows and doesn't seem
to be necessary anymore?
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-06-10 11:51:42 +02:00
Wolfgang Bumiller
218a1daf26
test: write modules at build time
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-29 10:55:41 +02:00
Wolfgang Bumiller
40d6ec96ea
bump perlmod to 0.13.1-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-25 15:47:13 +01:00
Wolfgang Bumiller
cac2982a8b
perlmod: expose ser::is_active
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-25 15:45:15 +01:00
Wolfgang Bumiller
f605d7cf0c
bump perlmod to 0.13.0-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-04 09:03:48 +01:00
Wolfgang Bumiller
cd69debd78
fix utf8 support in substr_from_str_slice
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-02 13:47:03 +01:00
Wolfgang Bumiller
c9ec592f3e
drop Result from substr_from_str_slice
...
and add `merge_str_slice` helper
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-02 12:46:48 +01:00
Wolfgang Bumiller
b61c34e6a7
bump perlmod to 0.12.2-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-01 15:17:24 +01:00
Wolfgang Bumiller
ff419b1922
allow string suffixes in substr_from_str_slice
...
the range check failed if the substr was a suffix due to the
range being exclusive on the end and end being the byte
after the last one
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-01 15:11:43 +01:00
Wolfgang Bumiller
73c3149eaa
bump perlmod to 0.12.1-1
...
while this is technically an API break this is new and
not-yet used and we're in the 0.x versions after all...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-01 14:43:01 +01:00
Wolfgang Bumiller
24ca477715
move substr_from_str_slice from ScalarRef to Scalar
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-01 14:41:27 +01:00
Wolfgang Bumiller
67c90f2d75
bump perlmod to 0.12.0-1 and perlmod-macro to 0.8.0-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-28 11:09:07 +01:00
Wolfgang Bumiller
68bc1c626f
update readme
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-28 11:09:07 +01:00
Wolfgang Bumiller
c15e1e1456
macro: add a write attribute to packages
...
the .pm file now gets written if either 'write=true' or
'file' is set, setting just 'lib' won't trigger a write
anymore
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-25 15:45:56 +01:00
Wolfgang Bumiller
08c14b8fc5
macro: rename boot symbol to boot_<module>
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-24 11:44:03 +01:00
Wolfgang Bumiller
daf4841996
macro: only write package files if requested
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-24 11:44:03 +01:00
Wolfgang Bumiller
a51cd47f9e
macro: drop span hack from error handling
...
copying the input doesn't seem to be required anymore
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-24 11:43:42 +01:00
Wolfgang Bumiller
cf751e2164
experimental access to defstash
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-24 11:43:42 +01:00
Wolfgang Bumiller
a43bf932c7
experimental direct substr support
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-24 11:43:33 +01:00
Wolfgang Bumiller
de0edd74e3
fix 'cv' type in test
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-22 12:50:45 +01:00
Wolfgang Bumiller
a87395e67f
doc updates
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-02-03 09:41:19 +01:00
Wolfgang Bumiller
cd52146822
bump perlmod & macro to 0.11.0-1 and 0.7.0-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-25 09:36:20 +01:00
Wolfgang Bumiller
481aa2fa5e
doc fixup
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-13 14:42:56 +01:00
Wolfgang Bumiller
8bb0c091bc
cargo fmt
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-10 12:50:11 +01:00
Wolfgang Bumiller
2d5855cc5e
rustfmt.toml: edition 2021
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-10 12:49:49 +01:00
Wolfgang Bumiller
2812f550d9
macro: pass 'cv' as Value
...
to reduce the amount of required unsafe blocks
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-07 15:59:33 +01:00
Wolfgang Bumiller
c25b213cc5
macro: use raw pointer for CV parameter
...
so generated xsubs are actually compatible with
Value::new_xsub
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-07 15:54:50 +01:00
Wolfgang Bumiller
e5c95f0414
macro: fix multiplicity parameter type
...
use ffi::Interpreter, same as what perlmod does via the
perl_fn macro
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-07 15:51:33 +01:00
Wolfgang Bumiller
fb27e167ba
doc updates
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-07 09:12:00 +01:00
Wolfgang Bumiller
77171723e3
macro: expose the 'cv' as parameter on exports
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-07 09:12:00 +01:00
Wolfgang Bumiller
c7882155cf
cleanup
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-07 09:11:41 +01:00
Wolfgang Bumiller
ebd82cb7ac
perlmod: ffi: support visibility in perl_fn
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-01-04 09:55:53 +01:00
Wolfgang Bumiller
9bf583ca64
macro: export: copy use chosen visibility
...
when using the export macro directly without a package we
previously always used
#[no_mangle]
pub extern "C"
now instead of 'pub' we copy the original function's
visibility
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-23 10:40:59 +01:00
Wolfgang Bumiller
100414d678
macro: fixup export visibility
...
commi 5491907876 was incomplete, this fixes up the
remaining 2 cases
Fixes: 5491907876 ("don't export xs wrappers from modules")
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-23 10:40:59 +01:00
Wolfgang Bumiller
577f68753f
perlmod: doc fixups
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-23 10:40:59 +01:00
Wolfgang Bumiller
3e1adbd039
bump d/control
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-17 14:24:44 +01:00
Wolfgang Bumiller
44c4c44b4e
bump perlmod to 0.10.1-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-17 09:22:58 +01:00
Wolfgang Bumiller
c0afdc3a97
perlmod: deny unsafe_op_in_unsafe_fn
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-17 09:20:58 +01:00
Wolfgang Bumiller
25d21384ae
perlmod: add Value::new_xsub as an unsafe fn
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-17 09:17:09 +01:00
Wolfgang Bumiller
af31038b48
perlmod: perl_fn for fn types w/o body
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-17 09:16:53 +01:00
Wolfgang Bumiller
f8b00d2b6b
fixup RSPL_newXS_flags to return the CV
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-16 14:57:03 +01:00
Wolfgang Bumiller
020bb8f6d9
doc updates
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-16 14:06:31 +01:00
Wolfgang Bumiller
e5a46a38ef
clippy fixes
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-15 10:45:15 +01:00
Wolfgang Bumiller
86f538fe3f
bump perlmod to 0.10.0-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-14 13:53:54 +01:00
Wolfgang Bumiller
d17087df54
perlmod: introduce MagicValue
...
It turns out that using `const` for the `MagicSpec` can lead
to multiple instances of it and the `TryFrom` accessing a
different vtable address than the instantiating functions.
This particularly happened when using `declare_magic!`
directly for a `Box<T>` where `T` is not declared in the
same module and is `!Sync`.
Instead, `declare_magic!()` now creates `static`s,
`MagicSpec` loses the associated value so we can safely
force it to be `Send + Sync`, and `MagicValue` is introduced
as the result of the `.with_value()` method call.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-14 13:33:07 +01:00
Wolfgang Bumiller
7922272173
perlmod: actually use provided magic var
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-14 13:27:40 +01:00
Wolfgang Bumiller
8c587b3bf3
doc fixup
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-14 12:13:28 +01:00
Wolfgang Bumiller
e68855945d
drop imports already in 2021 prelude
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-01 14:13:44 +01:00
Wolfgang Bumiller
381751a4e8
upgrade to edition 2021
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-12-01 13:48:40 +01:00