rfc:object-model-improvements

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
rfc:object-model-improvements [2011/02/25 22:39]
martinscotta
rfc:object-model-improvements [2011/03/03 14:14]
martinscotta
Line 1: Line 1:
-====== Request for Comments: ​How to write RFCs ======+====== Request for Comments: ​Object Model Improvements ​======
   * Version: 1.0   * Version: 1.0
-  * Date: 2008-03-06+  * Date: 2011-02-24
   * Author: Martin Scotta <​martinscotta@gmail.com>​   * Author: Martin Scotta <​martinscotta@gmail.com>​
   * Status: Under Discussion   * Status: Under Discussion
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>​+      <​code ​php> 
 +namespace Foo { 
 + class Baz {}  
 +}
 namespace Test {  namespace Test { 
- class Bar {} + use \Foo\Baz; 
- var_dump( Bar::CLASS ); // string "​Test\Bar"​+ 
 + interface Marker {} 
 + class Bar implements Marker ​{} 
 + 
 + var_dump( Marker::​CLASS ); // string "​Test\Marker"​ 
 + var_dump( Baz::CLASS ); // string "​Foo\Baz"​ 
 + var_dump( Bar::CLASS ); // string "​Test\Bar"​ 
 +
 +      </​code>​ 
 +=== errors into exceptions === 
 +   * Improve PHP Exception class 
 +   * Remove errors/​warnings,​ throw an Exceptions instead 
 +   * Better stacks dump 
 +      <code php> 
 +try { 
 + include $file; // as of today we just die here 
 +} catch(Exception $e) { 
 + echo $e->​getMessage();​ 
 + throw new DomainException($e);​
 } }
       </​code>​       </​code>​
rfc/object-model-improvements.txt · Last modified: 2017/09/22 13:28 (external edit)