rfc:object-model-improvements
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
rfc:object-model-improvements [2011/03/03 14:12] – martinscotta | rfc:object-model-improvements [2017/09/22 13:28] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 17: | Line 17: | ||
==== New Features ==== | ==== New Features ==== | ||
- | - Constructors | + | === Constructors |
* Provide a default empty constructor (if applicable) | * Provide a default empty constructor (if applicable) | ||
* Remove the inheritance | * Remove the inheritance | ||
* Disallow directly calls to them | * Disallow directly calls to them | ||
* Ensure constructor call on parent classes | * Ensure constructor call on parent classes | ||
- | - Magic methods: | + | === Magic methods |
* disallow directly call from outer context? | * disallow directly call from outer context? | ||
* markers interfaces | * markers interfaces | ||
- | - class / interface | + | === class / interface |
* provide a magic constant with the fully qualified class name | * provide a magic constant with the fully qualified class name | ||
<code php> | <code php> | ||
- | <?php | + | namespace Foo { |
- | namespace Foo { | + | class Baz {} |
- | class Baz {} | + | } |
- | } | + | namespace Test { |
- | namespace Test { | + | use \Foo\Baz; |
- | use \Foo\Baz; | + | |
- | interface Marker {} | + | interface Marker {} |
- | class Bar implements Marker {} | + | class Bar implements Marker {} |
- | var_dump( Marker:: | + | var_dump( Marker:: |
- | var_dump( Baz::CLASS ); // string " | + | var_dump( Baz::CLASS ); // string " |
- | var_dump( Bar::CLASS ); // string " | + | var_dump( Bar::CLASS ); // string " |
- | } | + | } |
</ | </ | ||
- | - errors into exceptions | + | === errors into exceptions |
* Improve PHP Exception class | * Improve PHP Exception class | ||
* Remove errors/ | * Remove errors/ | ||
* Better stacks dump | * Better stacks dump | ||
<code php> | <code php> | ||
- | try { | + | try { |
- | include $file; // as of today we just die here | + | include $file; // as of today we just die here |
- | } catch(PHPParseException | + | } catch(Exception |
- | echo $e-> | + | echo $e-> |
- | throw new DomainException($e); | + | throw new DomainException($e); |
- | } | + | } |
</ | </ | ||
rfc/object-model-improvements.1299161557.txt.gz · Last modified: 2017/09/22 13:28 (external edit)