|  | v8
    9.0.257(node16.0.0)
    V8 is Google's open source JavaScript engine | 
#include <v8.h>


| Public Member Functions | |
| ~ExternalStringResource () override=default | |
| virtual const uint16_t * | data () const =0 | 
| virtual size_t | length () const =0 | 
| const uint16_t * | cached_data () const | 
| void | UpdateDataCache () | 
|  Public Member Functions inherited from String::ExternalStringResourceBase | |
| virtual | ~ExternalStringResourceBase ()=default | 
| virtual bool | IsCacheable () const | 
| ExternalStringResourceBase (const ExternalStringResourceBase &)=delete | |
| void | operator= (const ExternalStringResourceBase &)=delete | 
| Protected Member Functions | |
| ExternalStringResource ()=default | |
|  Protected Member Functions inherited from String::ExternalStringResourceBase | |
| ExternalStringResourceBase ()=default | |
| virtual void | Dispose () | 
| virtual void | Lock () const | 
| virtual void | Unlock () const | 
An ExternalStringResource is a wrapper around a two-byte string buffer that resides outside V8's heap. Implement an ExternalStringResource to manage the life cycle of the underlying buffer. Note that the string data must be immutable.
| 
 | overridedefault | 
Override the destructor to manage the life cycle of the underlying buffer.
| 
 | protecteddefault | 
| 
 | inline | 
Returns the cached data from the underlying buffer. This method can be called only for cacheable resources (i.e. IsCacheable() == true) and only after UpdateDataCache() was called.
| 
 | pure virtual | 
The string data from the underlying buffer. If the resource is cacheable then data() must return the same value for all invocations.
| 
 | pure virtual | 
The length of the string. That is, the number of two-byte characters.
| void UpdateDataCache | ( | ) | 
Update {cached_data_} with the data from the underlying buffer. This can be called only for cacheable resources.