time to add that specialization of |nsCharSourceTraits<PRUnichar>|, not having it is probably hosing speedracer, r=waldemar

git-svn-id: svn://10.0.0.236/trunk@78007 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
scc%mozilla.org 2000-09-02 06:03:50 +00:00
parent b76ed2e0ae
commit 7656847708
3 changed files with 132 additions and 3 deletions

View File

@ -596,7 +596,50 @@ struct nsCharSourceTraits<const char*>
}
};
// Add specialization for |PRUnichar| only if it is needed
NS_SPECIALIZE_TEMPLATE
struct nsCharSourceTraits<const PRUnichar*>
{
typedef ptrdiff_t difference_type;
#if 0
static
PRUint32
distance( const PRUnichar* first, const PRUnichar* last )
{
return PRUint32(last-first);
}
#endif
static
PRUint32
readable_distance( const PRUnichar* s )
{
return PRUint32(nsCharTraits<PRUnichar>::length(s));
// return numeric_limits<PRUint32>::max();
}
static
PRUint32
readable_distance( const PRUnichar* first, const PRUnichar* last )
{
return PRUint32(last-first);
}
static
const PRUnichar*
read( const PRUnichar* s )
{
return s;
}
static
void
advance( PRUnichar*& s, difference_type n )
{
s += n;
}
};
#endif

View File

@ -596,7 +596,50 @@ struct nsCharSourceTraits<const char*>
}
};
// Add specialization for |PRUnichar| only if it is needed
NS_SPECIALIZE_TEMPLATE
struct nsCharSourceTraits<const PRUnichar*>
{
typedef ptrdiff_t difference_type;
#if 0
static
PRUint32
distance( const PRUnichar* first, const PRUnichar* last )
{
return PRUint32(last-first);
}
#endif
static
PRUint32
readable_distance( const PRUnichar* s )
{
return PRUint32(nsCharTraits<PRUnichar>::length(s));
// return numeric_limits<PRUint32>::max();
}
static
PRUint32
readable_distance( const PRUnichar* first, const PRUnichar* last )
{
return PRUint32(last-first);
}
static
const PRUnichar*
read( const PRUnichar* s )
{
return s;
}
static
void
advance( PRUnichar*& s, difference_type n )
{
s += n;
}
};
#endif

View File

@ -596,7 +596,50 @@ struct nsCharSourceTraits<const char*>
}
};
// Add specialization for |PRUnichar| only if it is needed
NS_SPECIALIZE_TEMPLATE
struct nsCharSourceTraits<const PRUnichar*>
{
typedef ptrdiff_t difference_type;
#if 0
static
PRUint32
distance( const PRUnichar* first, const PRUnichar* last )
{
return PRUint32(last-first);
}
#endif
static
PRUint32
readable_distance( const PRUnichar* s )
{
return PRUint32(nsCharTraits<PRUnichar>::length(s));
// return numeric_limits<PRUint32>::max();
}
static
PRUint32
readable_distance( const PRUnichar* first, const PRUnichar* last )
{
return PRUint32(last-first);
}
static
const PRUnichar*
read( const PRUnichar* s )
{
return s;
}
static
void
advance( PRUnichar*& s, difference_type n )
{
s += n;
}
};
#endif