Ignore:
Timestamp:
Dec 21, 2005, 4:55:34 PM (19 years ago)
Author:
ggaren
Message:

Reviewed by Darin.

Removed evil hack for determining if a type is an integer, replaced
with template metaprogramming.

  • JavaScriptCore.xcodeproj/project.pbxproj: Set tab size to 2 for testkjs.cpp
  • kjs/testkjs.cpp: (main): Inserted asserts to test IsInteger. FIXME: Move these to KXMLCore unit tests directory when we create one.
  • kxmlcore/HashTraits.h: (KXMLCore::): Added IsInteger class for querying types.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/testkjs.cpp

    r11527 r11719  
    2727#include <string.h>
    2828
     29#include "HashTraits.h"
    2930#include "value.h"
    3031#include "object.h"
     
    3536
    3637using namespace KJS;
     38using namespace KXMLCore;
    3739
    3840class TestFunctionImp : public JSObject {
     
    106108  {
    107109    JSLock lock;
    108 
     110   
     111    // Unit tests for KXMLCore::IsInteger. Don't have a better place for them now.
     112    // FIXME: move these once we create a unit test directory for KXMLCore.
     113    assert(IsInteger<bool>::value);
     114    assert(IsInteger<char>::value);
     115    assert(IsInteger<signed char>::value);
     116    assert(IsInteger<unsigned char>::value);
     117    assert(IsInteger<short>::value);
     118    assert(IsInteger<unsigned short>::value);
     119    assert(IsInteger<int>::value);
     120    assert(IsInteger<unsigned int>::value);
     121    assert(IsInteger<long>::value);
     122    assert(IsInteger<unsigned long>::value);
     123    assert(IsInteger<long long>::value);
     124    assert(IsInteger<unsigned long long>::value);
     125
     126    assert(!IsInteger<char *>::value);
     127    assert(!IsInteger<const char *>::value);
     128    assert(!IsInteger<volatile char *>::value);
     129    assert(!IsInteger<double>::value);
     130    assert(!IsInteger<float>::value);
     131    assert(!IsInteger<GlobalImp>::value);
     132   
    109133    JSObject *global(new GlobalImp());
    110134
Note: See TracChangeset for help on using the changeset viewer.