Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Turn the parsed signature into an object #31

Closed
schwern opened this issue Jul 5, 2011 · 3 comments
Closed

Turn the parsed signature into an object #31

schwern opened this issue Jul 5, 2011 · 3 comments

Comments

@schwern
Copy link
Contributor

schwern commented Jul 5, 2011

Similar to #30, turn the signature as a whole into an object.

The next step after this is likely to make a Method::Signatures object and hang the signature object off that... or just meld them together.

@schwern
Copy link
Contributor Author

schwern commented Feb 17, 2013

One benefit would be to separate signature parsing from the rest of the Devel::Declare stuff like so:

my $sig = Method::Signatures->new(q[($foo, $bar = 42)]);

This would allow someone to do interesting things with just the signature parsing but doing whatever they like for the grammar.

Also @rafl and others have pointed out that signatures are really just an array unpacking language. This would allow that use.

@schwern schwern added the API label Mar 26, 2014
@schwern
Copy link
Contributor Author

schwern commented Aug 6, 2014

This is largely done with Method::Signatures::Signature. MS::Signature is all about parsing the signature syntax into a data object. MS handles turning that into code and injecting it.

I'm going to call it done, even though it's not externally documented, as that will come when we need it.

@schwern schwern closed this as completed Aug 6, 2014
@barefootcoder
Copy link
Contributor

Hunh. I meant to close this one when I merged thne pull request. My bad.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants