diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8c9b01f..a71ec6f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -42,10 +42,12 @@ follows to track changes.
- Support downcasting a `Buffered` pointer ([#10]).
- Support unwrapping a `Buffered` pointer ([#11]).
- Add a helper macro `#[dynify]` for trait transformations ([#12]).
+- Support transformation of a function for `#[dynify]` ([#13])
[#10]: https://github.com/loichyan/dynify/pull/10
[#11]: https://github.com/loichyan/dynify/pull/11
[#12]: https://github.com/loichyan/dynify/pull/12
+[#13]: https://github.com/loichyan/dynify/pull/13
## [0.1.0] - 2025-07-06
diff --git a/macros/src/dynify.rs b/macros/src/dynify.rs
index 5811ba8..2c09d32 100644
--- a/macros/src/dynify.rs
+++ b/macros/src/dynify.rs
@@ -6,17 +6,32 @@ use crate::lifetime::TraitContext;
use crate::utils::*;
pub fn expand(attr: TokenStream, input: TokenStream) -> Result {
+ let rename = syn::parse2::