From:             [EMAIL PROTECTED]
Operating system: Irix 6, Solaris 7, OpenBSD 2.8
PHP version:      4.0.4pl1
PHP Bug Type:     Feature/Change Request
Bug description:  No operator overloading available

It would be nice to have operator overloading available for 
classes.  Something along the lines of Perl and C++.  I'm 
sure there are other OO languages that provide similar 
functionality.  This would go a long way to allowing the 
creation of object classes that are similar to those built 
into the language.

At least one class I'm wanting to create that could use this 
is an ordered set -- use +,-,*,/ for set union, asymmetric 
difference, intersection, and difference, for example.

Perhaps borrowing the C++ syntax wouldn't be a great burden. 

function operator+(objectClass,objectClass) { ... }

Unfortunately, this would require prototyping of class 
methods, but this is already implicately done for the 
operators (as far as the coder is concerned, even if not in 
fact).

Perhaps one way around the need for an explicit prototype is 
to consider the first argument of the binary operation (the 
left operand) as the governing class for finding the method.  
Then $A+$B == $A->operator+($B) and the function declaration 
is reduced to 

class A {
  function operator+($B) { ... }
}

I think this is important enough to the development of the 
language, and I didn't find mention of it in any of the 
documentation or archives I searched, that I am submitting 
it as a bug report for t


-- 
Edit Bug report at: http://bugs.php.net/?id=9331&edit=1



-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to