diff --git a/codegen/src/fold.rs b/codegen/src/fold.rs
index bb6e37d..e0f49d1 100644
--- a/codegen/src/fold.rs
+++ b/codegen/src/fold.rs
@@ -1,5 +1,4 @@
 use crate::{file, full, gen};
-use inflections::Inflect;
 use proc_macro2::{Span, TokenStream};
 use quote::{quote, TokenStreamExt};
 use syn::*;
@@ -13,12 +12,8 @@
     fold_impl: TokenStream,
 }
 
-fn under_name(name: &str) -> Ident {
-    Ident::new(&name.to_snake_case(), Span::call_site())
-}
-
 fn simple_visit(item: &str, name: &TokenStream) -> TokenStream {
-    let ident = under_name(item);
+    let ident = gen::under_name(item);
     let method = Ident::new(&format!("fold_{}", ident), Span::call_site());
     quote! {
         _visitor.#method(#name)
@@ -118,7 +113,7 @@
 
 fn node(state: &mut State, s: &types::Node, defs: &types::Definitions) {
     let features = visit_features(&s.features);
-    let under_name = under_name(&s.ident);
+    let under_name = gen::under_name(&s.ident);
     let ty = Ident::new(&s.ident, Span::call_site());
     let fold_fn = Ident::new(&format!("fold_{}", under_name), Span::call_site());
 
diff --git a/codegen/src/gen.rs b/codegen/src/gen.rs
index 30cee0d..fd77d0d 100644
--- a/codegen/src/gen.rs
+++ b/codegen/src/gen.rs
@@ -1,7 +1,13 @@
+use inflections::Inflect;
+use proc_macro2::{Ident, Span};
 use syn_codegen as types;
 
 pub const TERMINAL_TYPES: &[&str] = &["Span", "Ident"];
 
+pub fn under_name(name: &str) -> Ident {
+    Ident::new(&name.to_snake_case(), Span::call_site())
+}
+
 pub fn traverse<S, F>(defs: &types::Definitions, node: F) -> S
 where
     S: Default,
diff --git a/codegen/src/visit.rs b/codegen/src/visit.rs
index 9f85df9..15888d1 100644
--- a/codegen/src/visit.rs
+++ b/codegen/src/visit.rs
@@ -1,6 +1,5 @@
 use crate::operand::*;
 use crate::{file, full, gen};
-use inflections::Inflect;
 use proc_macro2::{Span, TokenStream};
 use quote::{quote, TokenStreamExt};
 use syn::*;
@@ -14,12 +13,8 @@
     visit_impl: TokenStream,
 }
 
-fn under_name(name: &str) -> Ident {
-    Ident::new(&name.to_snake_case(), Span::call_site())
-}
-
 fn simple_visit(item: &str, name: &Operand) -> TokenStream {
-    let ident = under_name(item);
+    let ident = gen::under_name(item);
     let method = Ident::new(&format!("visit_{}", ident), Span::call_site());
     let name = name.ref_tokens();
     quote! {
@@ -134,7 +129,7 @@
 
 fn node(state: &mut State, s: &types::Node, defs: &types::Definitions) {
     let features = visit_features(&s.features);
-    let under_name = under_name(&s.ident);
+    let under_name = gen::under_name(&s.ident);
     let ty = Ident::new(&s.ident, Span::call_site());
     let visit_fn = Ident::new(&format!("visit_{}", under_name), Span::call_site());
 
diff --git a/codegen/src/visit_mut.rs b/codegen/src/visit_mut.rs
index 850ba56..b2e853e 100644
--- a/codegen/src/visit_mut.rs
+++ b/codegen/src/visit_mut.rs
@@ -1,6 +1,5 @@
 use crate::operand::*;
 use crate::{file, full, gen};
-use inflections::Inflect;
 use proc_macro2::{Span, TokenStream};
 use quote::{quote, TokenStreamExt};
 use syn::*;
@@ -14,12 +13,8 @@
     visit_mut_impl: TokenStream,
 }
 
-fn under_name(name: &str) -> Ident {
-    Ident::new(&name.to_snake_case(), Span::call_site())
-}
-
 fn simple_visit(item: &str, name: &Operand) -> TokenStream {
-    let ident = under_name(item);
+    let ident = gen::under_name(item);
     let method = Ident::new(&format!("visit_{}_mut", ident), Span::call_site());
     let name = name.ref_mut_tokens();
     quote! {
@@ -134,7 +129,7 @@
 
 fn node(state: &mut State, s: &types::Node, defs: &types::Definitions) {
     let features = visit_features(&s.features);
-    let under_name = under_name(&s.ident);
+    let under_name = gen::under_name(&s.ident);
     let ty = Ident::new(&s.ident, Span::call_site());
     let visit_mut_fn = Ident::new(&format!("visit_{}_mut", under_name), Span::call_site());
 
