V8 API Reference, 7.2.502.16 (for Deno 0.2.4)
v8::internal::String Class Reference
Inheritance diagram for v8::internal::String:
v8::internal::Name v8::internal::HeapObjectPtr v8::internal::ObjectPtr v8::internal::ConsString v8::internal::ExternalString v8::internal::InternalizedString v8::internal::SeqString v8::internal::SlicedString v8::internal::ThinString v8::internal::ExternalOneByteString v8::internal::ExternalTwoByteString v8::internal::SeqOneByteString v8::internal::SeqTwoByteString

Classes

class  FlatContent
 
class  Match
 

Public Types

enum  Encoding { ONE_BYTE_ENCODING, TWO_BYTE_ENCODING }
 
enum  TrimMode { kTrim, kTrimStart, kTrimEnd }
 

Public Member Functions

template<typename Char >
V8_INLINE Vector< const Char > GetCharVector ()
 
int length () const
 
void set_length (int value)
 
int synchronized_length () const
 
void synchronized_set_length (int value)
 
bool IsOneByteRepresentation () const
 
bool IsTwoByteRepresentation () const
 
bool IsOneByteRepresentationUnderneath ()
 
bool IsTwoByteRepresentationUnderneath ()
 
bool HasOnlyOneByteChars ()
 
void Set (int index, uint16_t value)
 
V8_INLINE uint16_t Get (int index)
 
FlatContent GetFlatContent ()
 
String GetUnderlying ()
 
bool Equals (String other)
 
bool IsUtf8EqualTo (Vector< const char > str, bool allow_prefix_match=false)
 
template<typename Char >
bool IsEqualTo (Vector< const Char > str)
 
bool IsOneByteEqualTo (Vector< const uint8_t > str)
 
bool IsTwoByteEqualTo (Vector< const uc16 > str)
 
std::unique_ptr< char[]> ToCString (AllowNullsFlag allow_nulls, RobustnessFlag robustness_flag, int offset, int length, int *length_output=nullptr)
 
std::unique_ptr< char[]> ToCString (AllowNullsFlag allow_nulls=DISALLOW_NULLS, RobustnessFlag robustness_flag=FAST_STRING_TRAVERSAL, int *length_output=nullptr)
 
bool ComputeArrayIndex (uint32_t *index)
 
bool MakeExternal (v8::String::ExternalStringResource *resource)
 
bool MakeExternal (v8::String::ExternalOneByteStringResource *resource)
 
bool SupportsExternalization ()
 
bool AsArrayIndex (uint32_t *index)
 
uint32_t ToValidIndex (Object *number)
 
void PrintOn (FILE *out)
 
bool LooksValid ()
 
void StringShortPrint (StringStream *accumulator, bool show_details=true)
 
void PrintUC16 (std::ostream &os, int start=0, int end=-1)
 
bool IsFlat ()
 
template<>
Vector< const uint8_t > GetCharVector ()
 
template<>
Vector< const uc16 > GetCharVector ()
 
template<>
bool IsEqualTo (Vector< const uint8_t > str)
 
template<>
bool IsEqualTo (Vector< const uc16 > str)
 
- Public Member Functions inherited from v8::internal::Name
uint32_t hash_field ()
 
void set_hash_field (uint32_t value)
 
bool HasHashCode ()
 
uint32_t Hash ()
 
bool Equals (Name other)
 
bool AsArrayIndex (uint32_t *index)
 
bool IsInterestingSymbol () const
 
bool IsPrivate ()
 
bool IsPrivateName ()
 
bool IsUniqueName () const
 
void NameShortPrint ()
 
int NameShortPrint (Vector< char > str)
 
 STATIC_ASSERT (kArrayIndexLengthBits > 0)
 
 STATIC_ASSERT (kMaxArrayIndexSize<(1<< kArrayIndexLengthBits))
 
- Public Member Functions inherited from v8::internal::HeapObjectPtr
Map map () const
 
void set_map (Map value)
 
void set_map_after_allocation (Map value, WriteBarrierMode mode=UPDATE_WRITE_BARRIER)
 
void set_map_no_write_barrier (Map value)
 
ObjectSlot map_slot ()
 
MapWord map_word () const
 
void set_map_word (MapWord map_word)
 
void synchronized_set_map (Map value)
 
void synchronized_set_map_word (MapWord map_word)
 
WriteBarrierMode GetWriteBarrierMode (const DisallowHeapAllocation &promise)
 
 operator HeapObject * ()
 
 operator const HeapObject * () const
 
bool is_null () const
 
bool IsHeapObjectPtr () const
 
ReadOnlyRoots GetReadOnlyRoots () const
 
Address address () const
 
int Size () const
 
int SizeFromMap (Map map) const
 
ObjectSlot RawField (int byte_offset) const
 
MaybeObjectSlot RawMaybeWeakField (int byte_offset) const
 
void HeapObjectVerify (Isolate *isolate)
 
Address GetFieldAddress (int field_offset) const
 
- Public Member Functions inherited from v8::internal::ObjectPtr
constexpr ObjectPtr (Address ptr)
 
 operator Object * () const
 
bool operator== (const ObjectPtr other) const
 
bool operator!= (const ObjectPtr other) const
 
bool operator< (const ObjectPtr other) const
 
constexpr Address ptr () const
 
ObjectPtroperator-> ()
 
const ObjectPtroperator-> () const
 
bool IsHashTableBase () const
 
V8_INLINE bool IsSmallOrderedHashTable () const
 
bool IsObject () const
 
double Number () const
 
bool ToInt32 (int32_t *value) const
 
bool ToUint32 (uint32_t *value) const
 
bool BooleanValue (Isolate *isolate)
 
bool FilterKey (PropertyFilter filter)
 
ObjectGetHash ()
 
Smi GetOrCreateHash (Isolate *isolate)
 
V8_EXPORT_PRIVATE bool SameValue (Object *other)
 
V8_WARN_UNUSED_RESULT bool ToArrayIndex (uint32_t *index) const
 
void ShortPrint (FILE *out=stdout)
 
void ShortPrint (std::ostream &os)
 
void Print ()
 
void Print (std::ostream &os)
 

Static Public Member Functions

static Handle< ObjectToNumber (Isolate *isolate, Handle< String > subject)
 
static Handle< StringFlatten (Isolate *isolate, Handle< String > string, PretenureFlag pretenure=NOT_TENURED)
 
static V8_WARN_UNUSED_RESULT ComparisonResult Compare (Isolate *isolate, Handle< String > x, Handle< String > y)
 
static ObjectIndexOf (Isolate *isolate, Handle< Object > receiver, Handle< Object > search, Handle< Object > position)
 
static int IndexOf (Isolate *isolate, Handle< String > receiver, Handle< String > search, int start_index)
 
static ObjectLastIndexOf (Isolate *isolate, Handle< Object > receiver, Handle< Object > search, Handle< Object > position)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< StringGetSubstitution (Isolate *isolate, Match *match, Handle< String > replacement, int start_index=0)
 
static bool Equals (Isolate *isolate, Handle< String > one, Handle< String > two)
 
static Handle< StringTrim (Isolate *isolate, Handle< String > string, TrimMode mode)
 
template<typename sinkchar >
static void WriteToFlat (String source, sinkchar *sink, int from, int to)
 
static int NonAsciiStart (const char *chars, int length)
 
static bool IsAscii (const char *chars, int length)
 
static bool IsAscii (const uint8_t *chars, int length)
 
static int NonOneByteStart (const uc16 *chars, int length)
 
static bool IsOneByte (const uc16 *chars, int length)
 
template<class Visitor >
static ConsString VisitFlat (Visitor *visitor, String string, int offset=0)
 
static Handle< FixedArrayCalculateLineEnds (Isolate *isolate, Handle< String > string, bool include_ending_line)
 
- Static Public Member Functions inherited from v8::internal::Name
static bool Equals (Isolate *isolate, Handle< Name > one, Handle< Name > two)
 
static bool ContainsCachedArrayIndex (uint32_t hash)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< StringToFunctionName (Isolate *isolate, Handle< Name > name)
 
static V8_WARN_UNUSED_RESULT MaybeHandle< StringToFunctionName (Isolate *isolate, Handle< Name > name, Handle< String > prefix)
 

Static Public Attributes

static const int kLengthOffset = Name::kHeaderSize
 
static const int kHeaderSize = kLengthOffset + kInt32Size
 
static const int32_t kMaxOneByteCharCode = unibrow::Latin1::kMaxChar
 
static const uint32_t kMaxOneByteCharCodeU = unibrow::Latin1::kMaxChar
 
static const int kMaxUtf16CodeUnit = 0xffff
 
static const uint32_t kMaxUtf16CodeUnitU = kMaxUtf16CodeUnit
 
static const uc32 kMaxCodePoint = 0x10ffff
 
static const int kMaxLength = v8::String::kMaxLength
 
static const int kMaxHashCalcLength = 16383
 
static const int kMaxShortPrintLength = 1024
 
- Static Public Attributes inherited from v8::internal::Name
static const int kHashFieldOffset = HeapObject::kHeaderSize
 
static const int kHeaderSize = kHashFieldOffset + kInt32Size
 
static const int kHashNotComputedMask = 1
 
static const int kIsNotArrayIndexMask = 1 << 1
 
static const int kNofHashBitFields = 2
 
static const int kHashShift = kNofHashBitFields
 
static const uint32_t kHashBitMask = 0xffffffffu >> kHashShift
 
static const int kMaxCachedArrayIndexLength = 7
 
static const int kMaxArrayIndexSize = 10
 
static const int kArrayIndexValueBits = 24
 
static const int kArrayIndexLengthBits
 
static const unsigned int kDoesNotContainCachedArrayIndexMask
 
static const int kEmptyHashField
 
- Static Public Attributes inherited from v8::internal::HeapObjectPtr
static const int kMapOffset = HeapObject::kMapOffset
 
static const int kHeaderSize = HeapObject::kHeaderSize
 

Friends

class Name
 
class StringTableInsertionKey
 
class InternalizedStringKey
 

Additional Inherited Members

- Protected Types inherited from v8::internal::HeapObjectPtr
enum  AllowInlineSmiStorage { kRequireHeapObjectTag, kAllowBeingASmi }
 
- Protected Member Functions inherited from v8::internal::Name
 OBJECT_CONSTRUCTORS (Name, HeapObjectPtr)
 
- Protected Member Functions inherited from v8::internal::HeapObjectPtr
 HeapObjectPtr (Address ptr, AllowInlineSmiStorage allow_smi)
 
- Static Protected Member Functions inherited from v8::internal::Name
static bool IsHashFieldComputed (uint32_t field)
 

Detailed Description

Definition at line 82 of file string.h.


The documentation for this class was generated from the following files: