Author: simoneg
Date: Wed Jan 20 03:58:47 2010
New Revision: 901052

URL: http://svn.apache.org/viewvc?rev=901052&view=rev
Log:
Optimization on default char sequence implementation

Modified:
    
labs/magma/trunk/foundation-basics/src/main/java/org/apache/magma/basics/DefaultCharSequenceImpl.aj

Modified: 
labs/magma/trunk/foundation-basics/src/main/java/org/apache/magma/basics/DefaultCharSequenceImpl.aj
URL: 
http://svn.apache.org/viewvc/labs/magma/trunk/foundation-basics/src/main/java/org/apache/magma/basics/DefaultCharSequenceImpl.aj?rev=901052&r1=901051&r2=901052&view=diff
==============================================================================
--- 
labs/magma/trunk/foundation-basics/src/main/java/org/apache/magma/basics/DefaultCharSequenceImpl.aj
 (original)
+++ 
labs/magma/trunk/foundation-basics/src/main/java/org/apache/magma/basics/DefaultCharSequenceImpl.aj
 Wed Jan 20 03:58:47 2010
@@ -23,16 +23,25 @@
  */
 public aspect DefaultCharSequenceImpl {
 
+       private String DefaultCharSequence.stringified;
+       
+       private final void DefaultCharSequence.stringify() {
+               if (this.stringified == null) this.stringified = toString();
+       }
+       
        public char DefaultCharSequence.charAt(int i) {
-               return toString().charAt(i);
+               stringify();
+               return stringified.charAt(i);
        }
        
        public int DefaultCharSequence.length() {
-               return toString().length();
+               stringify();
+               return stringified.length();
        }
        
        public CharSequence DefaultCharSequence.subSequence(int begin, int end) 
{
-               return toString().subSequence(begin, end);
+               stringify();
+               return stringified.subSequence(begin, end);
        }
        
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to