Ignore:
Timestamp:
Jan 28, 2006, 8:12:59 PM (20 years ago)
Author:
mjs
Message:

Reviewed by Dave Hyatt.


  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/internal.cpp: (KJS::Parser::saveNewNode): Apply Vector. (KJS::clearNewNodes): ditto
  • kjs/number_object.cpp: (integer_part_noexp): ditto (char_sequence): ditto
  • kjs/ustring.cpp: (KJS::UString::UTF8String): ditto
  • kxmlcore/HashMap.h: (KXMLCore::deleteAllValues): Tweaked this to only apply to HashMap, other versions are useful for other containers.
  • kxmlcore/Vector.h: Added. Implemented a Vector class, which should be usable for all Array/QVector style purposes, and also as a stack buffer with oversize handling. Also some helper classes to make vector operations as efficient as possible for POD types and for simple non-PODs like RefPtr. (KXMLCore::): (KXMLCore::VectorTypeOperations::destruct): (KXMLCore::VectorTypeOperations::initialize): (KXMLCore::VectorTypeOperations::move): (KXMLCore::VectorTypeOperations::uninitializedCopy): (KXMLCore::VectorTypeOperations::uninitializedFill): (KXMLCore::VectorBuffer::VectorBuffer): (KXMLCore::VectorBuffer::~VectorBuffer): (KXMLCore::VectorBuffer::deallocateBuffer): (KXMLCore::VectorBuffer::inlineBuffer): (KXMLCore::Vector::Vector): (KXMLCore::Vector::~Vector): (KXMLCore::Vector::size): (KXMLCore::Vector::capacity): (KXMLCore::Vector::isEmpty): (KXMLCore::Vector::at): (KXMLCore::Vector::operator[]): (KXMLCore::Vector::data): (KXMLCore::Vector::operator T*): (KXMLCore::Vector::operator const T*): (KXMLCore::Vector::begin): (KXMLCore::Vector::end): (KXMLCore::Vector::clear): (KXMLCore::Vector::fill): (KXMLCore::Vector::operator=): (KXMLCore::::Vector): (KXMLCore::::operator): (KXMLCore::::fill): (KXMLCore::::expandCapacity): (KXMLCore::::resize): (KXMLCore::::reserveCapacity): (KXMLCore::::append): (KXMLCore::deleteAllValues):
  • kxmlcore/VectorTraits.h: Added. (KXMLCore::VectorTraits): Traits to enable making Vector efficient for simple types.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj

    r12319 r12435  
    3737                657EEBC0094E445E008C9C7B /* HashCountedSet.h in Headers */ = {isa = PBXBuildFile; fileRef = 657EEBBF094E445E008C9C7B /* HashCountedSet.h */; settings = {ATTRIBUTES = (Private, ); }; };
    3838                6580F796094070560082C219 /* PassRefPtr.h in Headers */ = {isa = PBXBuildFile; fileRef = 6580F795094070560082C219 /* PassRefPtr.h */; settings = {ATTRIBUTES = (Private, ); }; };
     39                6592C318098B7DE10003D4F6 /* Vector.h in Headers */ = {isa = PBXBuildFile; fileRef = 6592C316098B7DE10003D4F6 /* Vector.h */; settings = {ATTRIBUTES = (Private, ); }; };
     40                6592C319098B7DE10003D4F6 /* VectorTraits.h in Headers */ = {isa = PBXBuildFile; fileRef = 6592C317098B7DE10003D4F6 /* VectorTraits.h */; settings = {ATTRIBUTES = (Private, ); }; };
    3941                65C647B4093EF8D60022C380 /* RefPtr.h in Headers */ = {isa = PBXBuildFile; fileRef = 65C647B3093EF8D60022C380 /* RefPtr.h */; settings = {ATTRIBUTES = (Private, ); }; };
    4042                65D7D19C08F10B5B0015ABD8 /* FastMallocInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 65D7D19B08F10B5B0015ABD8 /* FastMallocInternal.h */; };
     
    341343                657EEBBF094E445E008C9C7B /* HashCountedSet.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = HashCountedSet.h; sourceTree = "<group>"; tabWidth = 8; };
    342344                6580F795094070560082C219 /* PassRefPtr.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = PassRefPtr.h; sourceTree = "<group>"; tabWidth = 8; };
     345                6592C316098B7DE10003D4F6 /* Vector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Vector.h; sourceTree = "<group>"; };
     346                6592C317098B7DE10003D4F6 /* VectorTraits.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = VectorTraits.h; sourceTree = "<group>"; };
    343347                65C02FBB0637462A003E7EE6 /* protect.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = protect.h; sourceTree = "<group>"; tabWidth = 8; };
    344348                65C647B3093EF8D60022C380 /* RefPtr.h */ = {isa = PBXFileReference; fileEncoding = 30; indentWidth = 4; lastKnownFileType = sourcecode.c.h; path = RefPtr.h; sourceTree = "<group>"; tabWidth = 8; };
     
    665669                        isa = PBXGroup;
    666670                        children = (
     671                                6592C316098B7DE10003D4F6 /* Vector.h */,
     672                                6592C317098B7DE10003D4F6 /* VectorTraits.h */,
    667673                                657EEBBF094E445E008C9C7B /* HashCountedSet.h */,
    668674                                65C647B3093EF8D60022C380 /* RefPtr.h */,
     
    857863                                93AA4F780957251F0084B3A7 /* AlwaysInline.h in Headers */,
    858864                                148A1627095D16BB00666D0D /* ListRefPtr.h in Headers */,
     865                                6592C318098B7DE10003D4F6 /* Vector.h in Headers */,
     866                                6592C319098B7DE10003D4F6 /* VectorTraits.h in Headers */,
    859867                        );
    860868                        runOnlyForDeploymentPostprocessing = 0;
Note: See TracChangeset for help on using the changeset viewer.