Skip to content

Commit

Permalink
bug #2502 Use class_exists instead of require (ogizanagi)
Browse files Browse the repository at this point in the history
This PR was merged into the 1.x branch.

Discussion
----------

Use class_exists instead of require

I think this is required for symfony/symfony#23073 to pass. It's probably very similar to symfony/symfony#22657.

A simple reproducer:

```php
<?php

use Twig\Node\Node;

require_once __DIR__ . '/vendor/autoload.php';

new Node();
new \Twig_Node();
```

[Without this patch](https://travis-ci.org/symfony/symfony/jobs/239712676#L2100):

```php
PHP Fatal error:  Cannot declare class Twig_Node, because the name is already in use in vendor/twig/twig/lib/Twig/Node.php on line 20
```

With, everything works fine, whatever the two calls order.

Commits
-------

2c174e4 Use class_exists instead of require
  • Loading branch information
fabpot committed Jun 5, 2017
2 parents 1af645d + 2c174e4 commit 8463178
Show file tree
Hide file tree
Showing 156 changed files with 156 additions and 156 deletions.
2 changes: 1 addition & 1 deletion src/Cache/FilesystemCache.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Cache;

require __DIR__.'/../../lib/Twig/Cache/Filesystem.php';
class_exists('Twig_Cache_Filesystem');

if (\false) {
class FilesystemCache extends \Twig_Cache_Filesystem
Expand Down
2 changes: 1 addition & 1 deletion src/Cache/NullCache.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Cache;

require __DIR__.'/../../lib/Twig/Cache/Null.php';
class_exists('Twig_Cache_Null');

if (\false) {
class NullCache extends \Twig_Cache_Null
Expand Down
2 changes: 1 addition & 1 deletion src/Compiler.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig;

require __DIR__.'/../lib/Twig/Compiler.php';
class_exists('Twig_Compiler');

if (\false) {
class Compiler extends \Twig_Compiler
Expand Down
2 changes: 1 addition & 1 deletion src/Environment.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig;

require __DIR__.'/../lib/Twig/Environment.php';
class_exists('Twig_Environment');

if (\false) {
class Environment extends \Twig_Environment
Expand Down
2 changes: 1 addition & 1 deletion src/Error/Error.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Error;

require __DIR__.'/../../lib/Twig/Error.php';
class_exists('Twig_Error');

if (\false) {
class Error extends \Twig_Error
Expand Down
2 changes: 1 addition & 1 deletion src/Error/LoaderError.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Error;

require __DIR__.'/../../lib/Twig/Error/Loader.php';
class_exists('Twig_Error_Loader');

if (\false) {
class LoaderError extends \Twig_Error_Loader
Expand Down
2 changes: 1 addition & 1 deletion src/Error/RuntimeError.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Error;

require __DIR__.'/../../lib/Twig/Error/Runtime.php';
class_exists('Twig_Error_Runtime');

if (\false) {
class RuntimeError extends \Twig_Error_Runtime
Expand Down
2 changes: 1 addition & 1 deletion src/Error/SyntaxError.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Error;

require __DIR__.'/../../lib/Twig/Error/Syntax.php';
class_exists('Twig_Error_Syntax');

if (\false) {
class SyntaxError extends \Twig_Error_Syntax
Expand Down
2 changes: 1 addition & 1 deletion src/ExpressionParser.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig;

require __DIR__.'/../lib/Twig/ExpressionParser.php';
class_exists('Twig_ExpressionParser');

if (\false) {
class ExpressionParser extends \Twig_ExpressionParser
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/AbstractExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension.php';
class_exists('Twig_Extension');

if (\false) {
class AbstractExtension extends \Twig_Extension
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/CoreExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Core.php';
class_exists('Twig_Extension_Core');

if (\false) {
class CoreExtension extends \Twig_Extension_Core
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/DebugExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Debug.php';
class_exists('Twig_Extension_Debug');

if (\false) {
class DebugExtension extends \Twig_Extension_Debug
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/EscaperExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Escaper.php';
class_exists('Twig_Extension_Escaper');

if (\false) {
class EscaperExtension extends \Twig_Extension_Escaper
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/OptimizerExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Optimizer.php';
class_exists('Twig_Extension_Optimizer');

if (\false) {
class OptimizerExtension extends \Twig_Extension_Optimizer
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/ProfilerExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Profiler.php';
class_exists('Twig_Extension_Profiler');

if (\false) {
class ProfilerExtension extends \Twig_Extension_Profiler
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/SandboxExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Sandbox.php';
class_exists('Twig_Extension_Sandbox');

if (\false) {
class SandboxExtension extends \Twig_Extension_Sandbox
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/StagingExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/Staging.php';
class_exists('Twig_Extension_Staging');

if (\false) {
class StagingExtension extends \Twig_Extension_Staging
Expand Down
2 changes: 1 addition & 1 deletion src/Extension/StringLoaderExtension.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Extension;

require __DIR__.'/../../lib/Twig/Extension/StringLoader.php';
class_exists('Twig_Extension_StringLoader');

if (\false) {
class StringLoaderExtension extends \Twig_Extension_StringLoader
Expand Down
2 changes: 1 addition & 1 deletion src/FileExtensionEscapingStrategy.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig;

require __DIR__.'/../lib/Twig/FileExtensionEscapingStrategy.php';
class_exists('Twig_FileExtensionEscapingStrategy');

if (\false) {
class FileExtensionEscapingStrategy extends \Twig_FileExtensionEscapingStrategy
Expand Down
2 changes: 1 addition & 1 deletion src/Lexer.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig;

require __DIR__.'/../lib/Twig/Lexer.php';
class_exists('Twig_Lexer');

if (\false) {
class Lexer extends \Twig_Lexer
Expand Down
2 changes: 1 addition & 1 deletion src/Loader/ArrayLoader.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Loader;

require __DIR__.'/../../lib/Twig/Loader/Array.php';
class_exists('Twig_Loader_Array');

if (\false) {
class ArrayLoader extends \Twig_Loader_Array
Expand Down
2 changes: 1 addition & 1 deletion src/Loader/ChainLoader.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Loader;

require __DIR__.'/../../lib/Twig/Loader/Chain.php';
class_exists('Twig_Loader_Chain');

if (\false) {
class ChainLoader extends \Twig_Loader_Chain
Expand Down
2 changes: 1 addition & 1 deletion src/Loader/FilesystemLoader.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Loader;

require __DIR__.'/../../lib/Twig/Loader/Filesystem.php';
class_exists('Twig_Loader_Filesystem');

if (\false) {
class FilesystemLoader extends \Twig_Loader_Filesystem
Expand Down
2 changes: 1 addition & 1 deletion src/Markup.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig;

require __DIR__.'/../lib/Twig/Markup.php';
class_exists('Twig_Markup');

if (\false) {
class Markup extends \Twig_Markup
Expand Down
2 changes: 1 addition & 1 deletion src/Node/AutoEscapeNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/AutoEscape.php';
class_exists('Twig_Node_AutoEscape');

if (\false) {
class AutoEscapeNode extends \Twig_Node_AutoEscape
Expand Down
2 changes: 1 addition & 1 deletion src/Node/BlockNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/Block.php';
class_exists('Twig_Node_Block');

if (\false) {
class BlockNode extends \Twig_Node_Block
Expand Down
2 changes: 1 addition & 1 deletion src/Node/BlockReferenceNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/BlockReference.php';
class_exists('Twig_Node_BlockReference');

if (\false) {
class BlockReferenceNode extends \Twig_Node_BlockReference
Expand Down
2 changes: 1 addition & 1 deletion src/Node/BodyNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/Body.php';
class_exists('Twig_Node_Body');

if (\false) {
class BodyNode extends \Twig_Node_Body
Expand Down
2 changes: 1 addition & 1 deletion src/Node/CheckSecurityNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/CheckSecurity.php';
class_exists('Twig_Node_CheckSecurity');

if (\false) {
class CheckSecurityNode extends \Twig_Node_CheckSecurity
Expand Down
2 changes: 1 addition & 1 deletion src/Node/DoNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/Do.php';
class_exists('Twig_Node_Do');

if (\false) {
class DoNode extends \Twig_Node_Do
Expand Down
2 changes: 1 addition & 1 deletion src/Node/EmbedNode.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node;

require __DIR__.'/../../lib/Twig/Node/Embed.php';
class_exists('Twig_Node_Embed');

if (\false) {
class EmbedNode extends \Twig_Node_Embed
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/AbstractExpression.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression;

require __DIR__.'/../../../lib/Twig/Node/Expression.php';
class_exists('Twig_Node_Expression');

if (\false) {
class AbstractExpression extends \Twig_Node_Expression
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/ArrayExpression.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression;

require __DIR__.'/../../../lib/Twig/Node/Expression/Array.php';
class_exists('Twig_Node_Expression_Array');

if (\false) {
class ArrayExpression extends \Twig_Node_Expression_Array
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/AssignNameExpression.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression;

require __DIR__.'/../../../lib/Twig/Node/Expression/AssignName.php';
class_exists('Twig_Node_Expression_AssignName');

if (\false) {
class AssignNameExpression extends \Twig_Node_Expression_AssignName
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/AbstractBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary.php';
class_exists('Twig_Node_Expression_Binary');

if (\false) {
class AbstractBinary extends \Twig_Node_Expression_Binary
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/AddBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/Add.php';
class_exists('Twig_Node_Expression_Binary_Add');

if (\false) {
class AddBinary extends \Twig_Node_Expression_Binary_Add
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/AndBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/And.php';
class_exists('Twig_Node_Expression_Binary_And');

if (\false) {
class AndBinary extends \Twig_Node_Expression_Binary_And
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/BitwiseAndBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/BitwiseAnd.php';
class_exists('Twig_Node_Expression_Binary_BitwiseAnd');

if (\false) {
class BitwiseAndBinary extends \Twig_Node_Expression_Binary_BitwiseAnd
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/BitwiseOrBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/BitwiseOr.php';
class_exists('Twig_Node_Expression_Binary_BitwiseOr');

if (\false) {
class BitwiseOrBinary extends \Twig_Node_Expression_Binary_BitwiseOr
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/BitwiseXorBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/BitwiseXor.php';
class_exists('Twig_Node_Expression_Binary_BitwiseXor');

if (\false) {
class BitwiseXorBinary extends \Twig_Node_Expression_Binary_BitwiseXor
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/ConcatBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/Concat.php';
class_exists('Twig_Node_Expression_Binary_Concat');

if (\false) {
class ConcatBinary extends \Twig_Node_Expression_Binary_Concat
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/DivBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/Div.php';
class_exists('Twig_Node_Expression_Binary_Div');

if (\false) {
class DivBinary extends \Twig_Node_Expression_Binary_Div
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/EndsWithBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/EndsWith.php';
class_exists('Twig_Node_Expression_Binary_EndsWith');

if (\false) {
class EndsWithBinary extends \Twig_Node_Expression_Binary_EndsWith
Expand Down
2 changes: 1 addition & 1 deletion src/Node/Expression/Binary/EqualBinary.php
Expand Up @@ -2,7 +2,7 @@

namespace Twig\Node\Expression\Binary;

require __DIR__.'/../../../../lib/Twig/Node/Expression/Binary/Equal.php';
class_exists('Twig_Node_Expression_Binary_Equal');

if (\false) {
class EqualBinary extends \Twig_Node_Expression_Binary_Equal
Expand Down

0 comments on commit 8463178

Please sign in to comment.