Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Mar 3, 2015
  1. @schwern
Commits on Feb 18, 2015
  1. @schwern

    Merge pull request #115 from slobo/master

    schwern authored
    Fix B::Lint context warning on generated code (the warning is silly, but it doesn't harm anything to avoid it)
  2. @slobo

    Merge pull request #1 from slobo/slobo-linter-warning

    slobo authored
    Fix B::Lint context warning on generated code
  3. @slobo

    Fix B::Lint context warning on generated code

    slobo authored
    We get implicit scalar context warning on generated code.
Commits on Feb 7, 2015
  1. @schwern

    Merge pull request #113 from goozbach/kwalitee-buildtool

    schwern authored
    make build.pl non-executable for Kwalitee metric
Commits on Feb 6, 2015
  1. make build.pl non-executable for Kwalitee metric

    Derek Carter authored
Commits on Oct 21, 2014
  1. @barefootcoder
Commits on Sep 21, 2014
  1. @barefootcoder
  2. @barefootcoder
  3. @barefootcoder

    Merge pull request #109 from evalEmpire/issue/104

    barefootcoder authored
    Fix line numbers for multi-line signatures
Commits on Sep 20, 2014
  1. @barefootcoder

    update Changes after pull request #110

    barefootcoder authored
    (which fixes GitHub #108)
  2. @barefootcoder

    Merge pull request #110 from evalEmpire/issue/108

    barefootcoder authored
    A required positional after an optional positional is an error.
  3. @barefootcoder

    fix for pull request #82

    barefootcoder authored
    test was failing on 5.8.9
    not entirely sure why, but falling back to a simpler string eval seems to fix it, so I'm just going with that
  4. @barefootcoder

    update Changes file w/ pull request #107

    barefootcoder authored
    (which fixes GitHub #106)
Commits on Sep 18, 2014
  1. @barefootcoder

    Merge pull request #82 from Hercynium/master

    barefootcoder authored
    Feature to change name of invocant variable on import
Commits on Sep 14, 2014
  1. @schwern

    A required positional after an optional positional is an error.

    schwern authored
    As documented...
    
       * If one positional param is optional, everything to the right must be
       optional
    
           method foo($a, $b?, $c?)  # legal
    
           method bar($a, $b?, $c)   # illegal, ambiguous
    
       Does "->bar(1,2)" mean $a = 1 and $b = 2 or $a = 1, $c = 3?
    
    A required positional after a slurpy technically falls under this, but gets
    its own specific error message elsewhere.  This is good because "slurpy
    args can only come last" is the information the user needs.
Commits on Sep 12, 2014
  1. @schwern
  2. @schwern

    Skip tests about line numbers for computed defaults on earlier Perls.

    schwern authored
    5.10 and back probably set the line number after parsing a "line"
    rather than per op code.  This might explain why Perl would often be
    off by one in error reporting inside things like if statements.
    
    The important thing is the body of the subroutine is correct, so I'm
    skipping the tests for default line numbers on those Perls.  My yak
    shears are dull.
  3. @schwern
  4. @schwern

    Make debugging dumps more consistent across Perl versions.

    schwern authored
    Makes them easier to compare.
  5. @schwern

    Eliminate a now unnecessary local $@.

    schwern authored
    This was causing failure on 5.12, 5.10 and 5.8.  I don't know why it's version
    specific.  It was introduced in e0cd9bc but the code it's in has been shifted
    around so it's now happening during object creation.  The tests introduced at
    that time still work.
    
    It's possible this was a bad interaction with PPI which uses eval without localizing
    $@.
Commits on Sep 11, 2014
  1. @schwern
  2. @schwern

    Line numbers in the signature are now accounted for.

    schwern authored
    Devel::Declare::set_linestr() cannot normally add multiple lines.  Toby and I
    figured out a way to trick the parser into continuing to process multiple lines
    without executing any addiitonal code.
    http://stackoverflow.com/a/25738997/14660
Commits on Sep 10, 2014
  1. @schwern

    MS->inject_from_signature does not need to be passed the Signature.

    schwern authored
    This is an artifact of earlier code when it was a function.
    
    I particularly want to ensure that inject_from_signature is always
    working on the Signature object contained in the invocant.  This
    makes it safe to use $self->{signature} elsewhere.
  2. @schwern

    Change MS::Parameter->line_number to first_line_number.

    schwern authored
    Since parameters can span multiple lines, this is more explicit about
    what it is.
  3. @schwern

    Cleanup the code to split the signature into parameters.

    schwern authored
    This is much better.
  4. @schwern

    Test and fix MS::Parameter->line_number.

    schwern authored
    We have to look at the first *significant* token in a parameter.
    Otherwise we'll pick up the whitespace after a comma, for example.
  5. @schwern

    Better name for a test.

    schwern authored
    split_proto() no longer exists.  MS::Signature->parameters takes over its
    work.
  6. @schwern

    Add the line number to the Parameter object.

    schwern authored
    Because the PPI tokens have the line number informaiton, this required
    unifying the parameter splitting with building the Parameter object.
    This is a good idea, the intermediate step was unnecessary, but I'm
    not happy with how complicated the loop has gotten.
    
    Ideally, MS::Parameter->new would be passed the PPI tokens and be left
    to do the work that _build_parameters is currently doing.  This would
    also avoid having to reconstruct the code and then reparse it with PPI
    inside Parameter.  The problem is how to neatly snip off a fragment
    of a PPI::Statement.  Not ready to tackle that.
    
    Haven't tested the line number yet.  That's coming next.
  7. @schwern
Commits on Aug 11, 2014
  1. @schwern

    Add 5.20 to the Travis config.

    schwern authored
Commits on Aug 7, 2014
  1. @barefootcoder

    Merge pull request #107 from evalEmpire/issue/106

    barefootcoder authored
    Fix multi-line defaults
Commits on Aug 6, 2014
  1. @schwern

    Test multi-line string defaults.

    schwern authored
    Seem Devel::Declare::set_linestr() doesn't mind them.  We got lucky.
  2. @schwern

    Fix multi-line defaults.

    schwern authored
    Devel::Declare cannot inject multiple lines.  This code flattens multi-
    line default expressions into a single line which Devel::Declare can
    handle.
    
    This will cause further problems with maintaining line numbers for
    calculated expressions within a complex expression, such as...
    
        func stuff(
            $arg = {
                foo => get_foo(),
                bar => 23
            }
        ) {
           ...
        }
    
    but there's no solution for that problem yet.
  3. @barefootcoder
Something went wrong with that request. Please try again.