Komodo Edit and Eclipe + EPIC plugin both have this functionality. Perhaps you can look into how they got this done? They may already have this list you speak of creating.
Again this is something Komodo Edit does and it does not require documentation to do so. Once you define your subroutine, it looks at what is retrieved from
and creates a signature. I've never looked at the source code so I can't tell you how they get it done.
Ps: I think you miss-spelled "push" in your %keywords list =)