let et = g:snip_end_tag
let cd = g:snip_elem_delim
-exec "Snippet class package ".st."ClassName".et.";<CR>use Moose;<CR>extends '".st."SuperClass".et."';<CR><CR>".st.et."<CR><CR>__PACKAGE__->meta->make_immutable;<CR>no Moose;<CR><CR>1;<CR>"
+function! RemoveEmptySuperClass()
+ s/^extends '<{}>';\n//e
+ return @z
+endfun
+
+exec "Snippet class package ".st."ClassName".et.";<CR>use Moose;<CR>extends '".st."SuperClass:RemoveEmptySuperClass()".et."';<CR><CR>".st.et."<CR><CR>__PACKAGE__->meta->make_immutable;<CR>no Moose;<CR><CR>1;<CR>"
exec "Snippet has has ".st."attr".et." => (<CR>is => 'rw',<CR>isa => 'Str',<CR>".st.et."<CR>);"
exec "Snippet hasl has ".st."attr".et." => (<CR>is => 'rw',<CR>isa => 'Str',<CR>lazy_build => 1,<CR>);<CR><CR>sub _build_".st."attr".et." {<CR>my $self = shift;<CR>".st.et."<CR>}<CR><CR>"
exec "Snippet sub sub ".st."name".et." {<CR>my $self = shift;<CR>".st.et."<CR>}<CR>"