Ignoring some special cases of functions getting visibility added when
not in a class.  With some additional tests, some taken from #332.
Enhancement: Always add path from console input
bug #342 Enhancement: Always add path from console input (localheinz)

This PR was merged into the 0.4.x-dev branch.

Discussion
----------

Enhancement: Always add path from console input

The change proposed in #262 makes the feature #251 work only with the change proposed in this PR:

## Steps to reproduce

Create a `.php_cs` file with the following contents:

```php
return Symfony\CS\Config\Config::create()
    ->fixers([
        'indentation',
        'linefeed',
        // . . .
    ])
;
```

Create some php file `foo.php` and run

```
$ bin/php-cs-fixer fix --config-file=.php_cs --dry-run --verbose foo.php
```

## Result

```
Loaded config from ".php_cs"

[LogicException]
You must call one of in() or append() methods before iterating over a Finder.

Exception trace:
() at /Users/localheinz/foo/vendor/symfony/finder/Symfony/Component/Finder/Finder.php:688
Symfony\Component\Finder\Finder->getIterator() at /Users/localheinz/foo/vendor/fabpot/php-cs-fixer/Symfony/CS/Fixer.php:92
Symfony\CS\Fixer->fix() at /Users/localheinz/foo/vendor/fabpot/php-cs-fixer/Symfony/CS/Console/Command/FixCommand.php:284
Symfony\CS\Console\Command\FixCommand->execute() at /Users/localheinz/foo/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:241
Symfony\Component\Console\Command\Command->run() at /Users/localheinz/foo/vendor/symfony/console/Symfony/Component/Console/Application.php:892
Symfony\Component\Console\Application->doRunCommand() at /Users/localheinz/foo/vendor/symfony/console/Symfony/Component/Console/Application.php:191
Symfony\Component\Console\Application->doRun() at /Users/localheinz/foo/vendor/symfony/console/Symfony/Component/Console/Application.php:121
Symfony\Component\Console\Application->run() at /Users/localheinz/foo/vendor/fabpot/php-cs-fixer/php-cs-fixer:27

fix [--config="..."] [--config-file[="..."]] [--dry-run] [--level="..."] [--fixers="..."] [--diff] [--format="..."] path
```

Updating the configuration in `.php_cs` and

```php
$finder = Symfony\CS\Finder\DefaultFinder::create()
    ->exclude('somedir')
    ->in(__DIR__)
;

return return Symfony\CS\Config\Config::create()
    ->finder($finder)
    ->fixers([
        'indentation',
        'linefeed',
        // . . .
    ])
;
```

doesn't help because only the file(s) represented by or in the specified path should be fixed.

## Fix

Just add the path as specified from the console already, and this works!

Commits
-------

a7e5c59 Enhancement: Always add path from console input
bug #336 Ignoring some special cases of functions getting visibility added (jaydiablo)

This PR was merged into the 0.4.x-dev branch.

Discussion
----------

Ignoring some special cases of functions getting visibility added

This is similar to #332, but this one includes a fix.  When running php-cs-fixer against more procedural style code (no oop) this visibility fixer would add "public" visibility keyword to the front of the function declarations, causing fatal syntax errors.  I added the test cases from #332, and added some more that I discovered it was processing (that it shouldn't be).

To pass these tests, I've modified the fixer to look for the OOP trigger words in what would be considered PHP code, rather than just the entire source content (ignores comments, doc blocks, strings and inline html).  I didn't see any easy way to do this with the regex used, but by using PHP's tokenizer I was able to strip these tokens from the content before the regex is run.

I had to add <?php tags to all of the tests for this class because otherwise the text is seen as T_INLINE_HTML to the tokenizer.

Commits
-------

9d79607 Ignoring some special cases of functions getting visibility added when not in a class.  With some additional tests, some taken from #332.