1410 lines
41 KiB
C++
1410 lines
41 KiB
C++
/*
|
|
File automatically generated by SOAdvancedDissector.py
|
|
More information at http://indefero.soutade.fr/p/soadvanceddissector
|
|
*/
|
|
|
|
#ifndef _UFT_H
|
|
#define _UFT_H
|
|
|
|
#include <rib.h>
|
|
|
|
namespace uft {
|
|
|
|
class ADEPTName;
|
|
class AllocBase;
|
|
class Allocator;
|
|
class ValueParser;
|
|
class AtomListParser;
|
|
class AtomParser;
|
|
class BitmapImage;
|
|
class BitmapImageStruct;
|
|
class BlockHead;
|
|
class Buffer;
|
|
class BufferManager;
|
|
class BufferPin;
|
|
class BufferRec;
|
|
class BufferStruct;
|
|
class CachingValue;
|
|
class ChainingParser;
|
|
class ContextParser;
|
|
class Date;
|
|
class DateStruct;
|
|
class Dict;
|
|
class DictStruct;
|
|
class DoubleParser;
|
|
class EVName;
|
|
class EnumParser;
|
|
class ErrorHandler;
|
|
class Float;
|
|
class FloatParser;
|
|
class IntParser;
|
|
class IntRectStruct;
|
|
class LazyRef;
|
|
class LazyRefStruct;
|
|
class LongParser;
|
|
class LowercasingAtomParser;
|
|
class ParserContext;
|
|
class MSchemaParserContext;
|
|
class MutableRef;
|
|
class MutableRefAccessor;
|
|
class MutableRefAccessorImpl;
|
|
class NameParser;
|
|
class NullParser;
|
|
class Opaque;
|
|
class OpaqueStruct;
|
|
class ParseErrorHandler;
|
|
class PassThruParser;
|
|
class PlatformString;
|
|
class QName;
|
|
class QNameParser;
|
|
class QNameStruct;
|
|
class Real;
|
|
class RealPoint;
|
|
class RealRect;
|
|
class Runtime;
|
|
class RuntimeImpl;
|
|
class Set;
|
|
class SimpleRefStruct;
|
|
class SizedBlock;
|
|
class StdBufferManager;
|
|
class String;
|
|
class StringBlock;
|
|
class StringBuffer;
|
|
class StringBufferStruct;
|
|
class StringParser;
|
|
class StructBlock;
|
|
class StructDescriptor;
|
|
class SubBufferManager;
|
|
class Token;
|
|
class TransientStringBuffer;
|
|
class Tuple;
|
|
class UFTInitializer;
|
|
class URL;
|
|
class URLStruct;
|
|
class UTF16String;
|
|
class Value;
|
|
class ValueRef;
|
|
class Vector;
|
|
class VectorStruct;
|
|
class WeakRef;
|
|
|
|
|
|
class ADEPTName
|
|
{
|
|
public:
|
|
ADEPTName(uft::String const&);
|
|
|
|
~ADEPTName();
|
|
|
|
};
|
|
|
|
class NoThrow
|
|
{
|
|
|
|
};
|
|
|
|
class ValueType
|
|
{
|
|
|
|
};
|
|
|
|
class CacheFlushContext
|
|
{
|
|
|
|
};
|
|
|
|
class CacheCostInfo
|
|
{
|
|
};
|
|
|
|
class AllocBase
|
|
{
|
|
public:
|
|
void operator delete(void*);
|
|
void operator delete(void*, uft::NoThrow const&);
|
|
void operator delete[](void*);
|
|
void operator delete[](void*, uft::NoThrow const&);
|
|
void* operator new(unsigned int);
|
|
void* operator new(unsigned int, uft::NoThrow const&);
|
|
void* operator new[](unsigned int);
|
|
void* operator new[](unsigned int, uft::NoThrow const&);
|
|
|
|
};
|
|
|
|
class Allocator
|
|
{
|
|
public:
|
|
void free(void*);
|
|
void freeClientMaintainsSize(void*, unsigned int);
|
|
void malloc(unsigned int);
|
|
void mallocClientMaintainsSize(unsigned int);
|
|
void mallocClientMaintainsSizeThrow(unsigned int);
|
|
void mallocThrow(unsigned int);
|
|
|
|
};
|
|
|
|
class ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const = 0;
|
|
virtual void getValidStartChars() const = 0;
|
|
|
|
void* s_atomListParser;
|
|
void* s_atomParser;
|
|
void* s_contextParser;
|
|
void* s_doubleParser;
|
|
void* s_floatParser;
|
|
void* s_intParser;
|
|
void* s_longParser;
|
|
void* s_lowercasingAtomParser;
|
|
void* s_nameParser;
|
|
void* s_nullParser;
|
|
void* s_passthruParser;
|
|
void* s_qnameParser;
|
|
void* s_stringParser;
|
|
|
|
};
|
|
|
|
class AtomListParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class AtomParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class BitmapImage
|
|
{
|
|
public:
|
|
BitmapImage();
|
|
BitmapImage(unsigned int, unsigned int, uft::String);
|
|
|
|
};
|
|
|
|
class BitmapImageStruct
|
|
{
|
|
public:
|
|
BitmapImageStruct();
|
|
BitmapImageStruct(uft::BitmapImageStruct const&);
|
|
|
|
~BitmapImageStruct();
|
|
|
|
void addUpdatedRect(uft::IntRectStruct const&);
|
|
void getPixelSize(uft::String const&);
|
|
void init(uft::Buffer const&, unsigned int, uft::String const&, uft::IntRectStruct const&);
|
|
void staticInit();
|
|
void validate(int, int);
|
|
|
|
void* s_descriptor;
|
|
|
|
};
|
|
|
|
class BlockHead
|
|
{
|
|
public:
|
|
void addRef();
|
|
void allocBlock(uft::StructDescriptor const*);
|
|
void allocBlock(uft::ValueType, unsigned int);
|
|
void clone() const;
|
|
void freeBlock(uft::BlockHead*);
|
|
void getType() const;
|
|
void isString() const;
|
|
void isStruct() const;
|
|
void release();
|
|
void toString() const;
|
|
|
|
};
|
|
|
|
class Buffer
|
|
{
|
|
public:
|
|
Buffer();
|
|
Buffer(uft::Buffer const&);
|
|
Buffer(uft::String const&);
|
|
Buffer(uft::String const&, unsigned int, unsigned int);
|
|
Buffer(unsigned char const*, unsigned int);
|
|
Buffer(unsigned int, uft::BufferManager*, unsigned int);
|
|
Buffer(unsigned int, unsigned int);
|
|
|
|
~Buffer();
|
|
|
|
void append(uft::Buffer const&);
|
|
void append(unsigned char const*, unsigned int);
|
|
void buffer() const;
|
|
void clone() const;
|
|
void ensure(unsigned int);
|
|
void ensureWritableAndResize(unsigned int);
|
|
void insert(unsigned int, uft::Buffer const&);
|
|
void insert(unsigned int, unsigned char const*, unsigned int);
|
|
void isImmovable() const;
|
|
void isInstanceOf(uft::Value const&);
|
|
void isResizable() const;
|
|
void isWritable() const;
|
|
void length() const;
|
|
void nullValue();
|
|
void operator=(uft::Buffer const&);
|
|
void pin() const;
|
|
void readonly() const;
|
|
void region(unsigned int) const;
|
|
void region(unsigned int, unsigned int) const;
|
|
void splice(unsigned int, unsigned int, uft::Buffer const&);
|
|
void splice(unsigned int, unsigned int, unsigned char const*, unsigned int);
|
|
void unpin() const;
|
|
void writableBuffer() const;
|
|
|
|
};
|
|
|
|
class BufferManager
|
|
{
|
|
public:
|
|
virtual ~BufferManager();
|
|
virtual void alloc(uft::BufferRec*, unsigned int, unsigned int) = 0;
|
|
virtual void realloc(uft::BufferRec*, unsigned int) = 0;
|
|
virtual void clone(uft::BufferRec const*, uft::BufferRec*, unsigned int) = 0;
|
|
virtual void pin(uft::BufferRec*) = 0;
|
|
virtual void unpin(uft::BufferRec*) = 0;
|
|
virtual void free(uft::BufferRec*) = 0;
|
|
virtual void toString(uft::BufferRec const*) = 0;
|
|
|
|
void getBuffer(uft::Buffer const&);
|
|
|
|
};
|
|
|
|
class BufferPin
|
|
{
|
|
public:
|
|
BufferPin(uft::Buffer const&);
|
|
|
|
~BufferPin();
|
|
|
|
void buffer() const;
|
|
|
|
};
|
|
|
|
class BufferRec
|
|
{
|
|
public:
|
|
};
|
|
|
|
class BufferStruct
|
|
{
|
|
public:
|
|
BufferStruct();
|
|
BufferStruct(uft::BufferStruct const&);
|
|
BufferStruct(unsigned int, uft::BufferManager*, unsigned int);
|
|
|
|
~BufferStruct();
|
|
|
|
void query(uft::Value const&, void*);
|
|
|
|
};
|
|
|
|
class CachingValue
|
|
{
|
|
public:
|
|
void flush(uft::CacheFlushContext*);
|
|
void isInstanceOf(uft::Value const&);
|
|
void queryCost(uft::CacheCostInfo*);
|
|
|
|
};
|
|
|
|
class ChainingParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
ChainingParser(uft::ValueParser const**, int);
|
|
ChainingParser(uft::ValueParser const*, uft::ValueParser const*);
|
|
ChainingParser(uft::ValueParser const*, uft::ValueParser const*, uft::ValueParser const*);
|
|
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
virtual ~ChainingParser();
|
|
|
|
void init(uft::ValueParser const**, int);
|
|
|
|
};
|
|
|
|
class ContextParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class Date
|
|
{
|
|
public:
|
|
Date();
|
|
Date(long long);
|
|
Date(uft::Date const&);
|
|
|
|
~Date();
|
|
|
|
void breakUpTime(long long, int*, unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int*, unsigned int*);
|
|
void getCurrentDate();
|
|
void getCurrentTime();
|
|
void getDateStruct() const;
|
|
void getDayOfMonth() const;
|
|
void getDayOfWeek() const;
|
|
void getDayOfYear() const;
|
|
void getHours() const;
|
|
void getMilliseconds() const;
|
|
void getMinutes() const;
|
|
void getMonth() const;
|
|
void getSeconds() const;
|
|
void getTime() const;
|
|
void getYear() const;
|
|
void getYear1970GMT();
|
|
void isInstanceOf(uft::Value const&);
|
|
void makeTime(int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int);
|
|
void nullValue();
|
|
void operator=(uft::Date const&);
|
|
void timeFromW3CDTFString(uft::String const&);
|
|
void toDateString(long long);
|
|
void toMMDDYYYYString(long long);
|
|
void toString() const;
|
|
void toString(long long);
|
|
void toW3CDTFString() const;
|
|
void toW3CDTFString(long long);
|
|
|
|
};
|
|
|
|
class DateStruct
|
|
{
|
|
public:
|
|
void getTime();
|
|
void toString() const;
|
|
void toW3CDTFString() const;
|
|
|
|
};
|
|
|
|
class Dict
|
|
{
|
|
public:
|
|
Dict();
|
|
Dict(uft::Dict const&);
|
|
Dict(uft::Value const*, uft::Value const*, unsigned int);
|
|
Dict(uft::Value const*, unsigned int);
|
|
Dict(unsigned int);
|
|
|
|
~Dict();
|
|
|
|
class Action {};
|
|
|
|
void contains(uft::Value const&) const;
|
|
void emptyValue();
|
|
void get(uft::Value const&) const;
|
|
void getSelf() const;
|
|
void getValueLoc(uft::Value const&, uft::Dict::Action) const;
|
|
void isInstanceOf(uft::Value const&);
|
|
void makeEmpty() const;
|
|
void mergeDict(uft::Dict const&, bool) const;
|
|
void nextKey(unsigned int, uft::Value const**, uft::Value**) const;
|
|
void nullValue();
|
|
void operator=(uft::Dict const&);
|
|
void set(uft::Value const&, uft::Value const&) const;
|
|
|
|
};
|
|
|
|
class DictStruct
|
|
{
|
|
public:
|
|
DictStruct(uft::DictStruct const&);
|
|
DictStruct(uft::Value const*, uft::Value const*, unsigned int);
|
|
DictStruct(uft::Value const*, unsigned int);
|
|
DictStruct(unsigned int);
|
|
|
|
~DictStruct();
|
|
|
|
void getValueLoc(uft::Value const&, unsigned int);
|
|
void makeEmpty();
|
|
void nextKey(unsigned int, uft::Value const**, uft::Value**) const;
|
|
void setCapacity(unsigned int, bool);
|
|
void sort();
|
|
uft::String toString() const;
|
|
|
|
};
|
|
|
|
class DoubleParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class EVName
|
|
{
|
|
public:
|
|
~EVName();
|
|
|
|
};
|
|
|
|
class EnumParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
EnumParser(uft::Set const&, bool);
|
|
|
|
~EnumParser();
|
|
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class ErrorHandler
|
|
{
|
|
public:
|
|
ErrorHandler();
|
|
|
|
virtual ~ErrorHandler();
|
|
virtual void reportStateError(uft::String const&) = 0;
|
|
virtual void reportProcessError(uft::String const&) = 0;
|
|
virtual uft::String getURLString() = 0;
|
|
virtual void changeURL(uft::String const&) = 0;
|
|
|
|
};
|
|
|
|
class Float
|
|
{
|
|
public:
|
|
Float(float);
|
|
|
|
~Float();
|
|
|
|
};
|
|
|
|
class FloatParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class IntParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class IntRectStruct
|
|
{
|
|
public:
|
|
void contains(uft::IntRectStruct const&) const;
|
|
void intersectWidth(uft::IntRectStruct const&);
|
|
void makeEmpty();
|
|
void staticInit();
|
|
void toString() const;
|
|
void unionWith(uft::IntRectStruct const&);
|
|
|
|
void* s_descriptor;
|
|
|
|
};
|
|
|
|
class LazyRef
|
|
{
|
|
public:
|
|
LazyRef(uft::Value const&, uft::Value (*)(uft::Value const&), bool);
|
|
|
|
};
|
|
|
|
class LazyRefStruct
|
|
{
|
|
public:
|
|
void copy(uft::StructDescriptor const*, void*, void const*);
|
|
void destroy(uft::StructDescriptor const*, void*);
|
|
void extractValue(bool);
|
|
void flush(uft::StructDescriptor const*, void*, uft::CacheFlushContext*);
|
|
void query(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void queryCached(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void toString(uft::StructDescriptor const*, void*);
|
|
|
|
};
|
|
|
|
class LongParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class LowercasingAtomParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class ParserContext
|
|
{
|
|
public:
|
|
virtual void resolveNSPrefix(uft::String const&) = 0;
|
|
virtual void prefixBindingsChanged() = 0;
|
|
virtual void getNodeType() = 0;
|
|
virtual void getErrorHandler();
|
|
|
|
void getMSchemaContext();
|
|
|
|
};
|
|
|
|
class MSchemaParserContext: public uft::ParserContext
|
|
{
|
|
public:
|
|
virtual void resolveNSPrefix(uft::String const&);
|
|
virtual void prefixBindingsChanged();
|
|
virtual void getNodeType();
|
|
virtual void getErrorHandler();
|
|
|
|
};
|
|
|
|
class MutableRef
|
|
{
|
|
public:
|
|
void assign(uft::Value const&) const;
|
|
|
|
};
|
|
|
|
class MutableRefAccessor
|
|
{
|
|
public:
|
|
virtual void assign(uft::Value const&, uft::Value const&) = 0;
|
|
|
|
void* CLASS_ID;
|
|
|
|
};
|
|
|
|
class MutableRefAccessorImpl: public uft::MutableRefAccessor
|
|
{
|
|
public:
|
|
virtual void assign(uft::Value const&, uft::Value const&);
|
|
|
|
void* s_instance;
|
|
|
|
};
|
|
|
|
class NameParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class NullParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class Opaque
|
|
{
|
|
public:
|
|
Opaque(unsigned int);
|
|
|
|
void getStoredValue() const;
|
|
void isInstanceOf(uft::Value const&);
|
|
|
|
};
|
|
|
|
class OpaqueStruct
|
|
{
|
|
public:
|
|
void staticInit();
|
|
|
|
void* s_descriptor;
|
|
|
|
};
|
|
|
|
class ParseErrorHandler: public uft::ErrorHandler
|
|
{
|
|
public:
|
|
virtual ~ParseErrorHandler();
|
|
virtual void reportStateError(uft::String const&);
|
|
virtual void reportProcessError(uft::String const&);
|
|
virtual uft::String getURLString();
|
|
virtual void changeURL(uft::String const&);
|
|
virtual void setURLString(uft::String const&);
|
|
|
|
};
|
|
|
|
class PassThruParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class PlatformString
|
|
{
|
|
public:
|
|
PlatformString(char const*);
|
|
PlatformString(char const*, unsigned int);
|
|
PlatformString(uft::PlatformString const&);
|
|
PlatformString(uft::String const&);
|
|
PlatformString(uft::String const&, unsigned int, unsigned int);
|
|
PlatformString(uft::StringBuffer const&);
|
|
PlatformString(uft::UTF16String const&);
|
|
PlatformString(uft::UTF16String const&, unsigned int, unsigned int);
|
|
PlatformString(unsigned short const*);
|
|
PlatformString(unsigned short const*, unsigned int);
|
|
|
|
void initUTF16(unsigned short const*, unsigned int);
|
|
void initUTF8(char const*, unsigned int);
|
|
|
|
};
|
|
|
|
class QName
|
|
{
|
|
public:
|
|
QName(uft::String const&);
|
|
QName(uft::String const&, bool);
|
|
QName(uft::String const&, uft::String const&, uft::String const&);
|
|
|
|
~QName();
|
|
|
|
void atomID() const;
|
|
void fromCanonicalString(uft::String);
|
|
void getCanonicalNS(uft::String const&);
|
|
void getCanonicalName() const;
|
|
void getCanonicalPrefix(uft::String const&);
|
|
void getLocalName() const;
|
|
void getNamespaceURI() const;
|
|
void getPrefix() const;
|
|
void getTriplet() const;
|
|
|
|
};
|
|
|
|
class QNameParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class QNameStruct
|
|
{
|
|
public:
|
|
QNameStruct(uft::String const&, uft::String const&, uft::String const&);
|
|
|
|
void getTriplet() const;
|
|
|
|
};
|
|
|
|
class Real
|
|
{
|
|
public:
|
|
};
|
|
|
|
class RealPoint
|
|
{
|
|
public:
|
|
};
|
|
|
|
class RealRect
|
|
{
|
|
public:
|
|
void intersectWith(uft::RealRect const&);
|
|
void makeEmpty();
|
|
void toString();
|
|
void unionWith(uft::RealRect const&);
|
|
|
|
};
|
|
|
|
class Runtime
|
|
{
|
|
public:
|
|
virtual ~Runtime();
|
|
virtual void allocUFTBlock(unsigned int) = 0;
|
|
virtual void allocUFTBlock(unsigned int, char const*, int) = 0;
|
|
virtual void freeUFTBlock(void*) = 0;
|
|
virtual void allocCachingBlock(unsigned int) = 0;
|
|
virtual void allocCachingBlock(unsigned int, char const*, int) = 0;
|
|
virtual void freeCachingBlock(void*) = 0;
|
|
virtual void allocBlock(unsigned int) = 0;
|
|
virtual void allocBlock(unsigned int, char const*, int) = 0;
|
|
virtual void freeBlock(unsigned int, void*) = 0;
|
|
virtual void iterateCache(unsigned int*, uft::CachingValue*) = 0;
|
|
virtual void finishCacheIteration(unsigned int) = 0;
|
|
virtual void getHeapSize() = 0;
|
|
virtual void getStructDescriptor(uft::String const&) = 0;
|
|
virtual void getAtom(uft::String const&) = 0;
|
|
virtual void getAtom(unsigned int) = 0;
|
|
virtual void removeAtom(uft::StringBlock*) = 0;
|
|
virtual void initPredefinedAtoms(char**, unsigned int) = 0;
|
|
virtual void getStdBufferManager() = 0;
|
|
|
|
void staticInit();
|
|
|
|
void* s_instance;
|
|
|
|
};
|
|
|
|
class RuntimeImpl: public uft::Runtime
|
|
{
|
|
public:
|
|
RuntimeImpl();
|
|
|
|
virtual ~RuntimeImpl();
|
|
virtual void allocUFTBlock(unsigned int);
|
|
virtual void allocUFTBlock(unsigned int, char const*, int);
|
|
virtual void freeUFTBlock(void*);
|
|
virtual void allocCachingBlock(unsigned int);
|
|
virtual void allocCachingBlock(unsigned int, char const*, int);
|
|
virtual void freeCachingBlock(void*);
|
|
virtual void allocBlock(unsigned int);
|
|
virtual void allocBlock(unsigned int, char const*, int);
|
|
virtual void freeBlock(unsigned int, void*);
|
|
virtual void iterateCache(unsigned int*, uft::CachingValue*);
|
|
virtual void finishCacheIteration(unsigned int);
|
|
virtual void getHeapSize();
|
|
virtual void getStructDescriptor(uft::String const&);
|
|
virtual void getAtom(uft::String const&);
|
|
virtual void getAtom(unsigned int);
|
|
virtual void removeAtom(uft::StringBlock*);
|
|
virtual void initPredefinedAtoms(char**, unsigned int);
|
|
virtual void getStdBufferManager();
|
|
|
|
void alloc(unsigned int);
|
|
void getIndex(uft::StringBlock*, unsigned int*);
|
|
void initAllocator();
|
|
void resize(unsigned int);
|
|
void shutdownAllocator();
|
|
|
|
};
|
|
|
|
class Set
|
|
{
|
|
public:
|
|
Set();
|
|
Set(uft::Set const&);
|
|
Set(uft::Value const&);
|
|
Set(uft::Value const&, uft::Value const&);
|
|
Set(uft::Value const&, uft::Value const&, uft::Value const&);
|
|
Set(uft::Value const&, uft::Value const&, uft::Value const&, uft::Value const&);
|
|
Set(uft::Value const&, uft::Value const&, uft::Value const&, uft::Value const&, uft::Value const&);
|
|
Set(unsigned int);
|
|
|
|
~Set();
|
|
|
|
class Action {};
|
|
|
|
void add(uft::Value const&) const;
|
|
void contains(uft::Value const&) const;
|
|
void emptyValue();
|
|
void init(uft::Value const*, unsigned int, unsigned int);
|
|
void length() const;
|
|
void makeEmpty() const;
|
|
void manage(uft::Value const&, uft::Set::Action) const;
|
|
void nextItem(unsigned int, uft::Value const**) const;
|
|
void operator=(uft::Set const&);
|
|
void setCapacity(unsigned int) const;
|
|
|
|
};
|
|
|
|
class SimpleRefStruct
|
|
{
|
|
public:
|
|
void copy(uft::StructDescriptor const*, void*, void const*);
|
|
void destroy(uft::StructDescriptor const*, void*);
|
|
void destroyWeak(uft::StructDescriptor const*, void*);
|
|
void flush(uft::StructDescriptor const*, void*, uft::CacheFlushContext*);
|
|
void query(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void queryCached(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void queryMutable(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void queryMutableCached(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void queryWeak(uft::StructDescriptor const*, void*, uft::Value const&, void*);
|
|
void toString(uft::StructDescriptor const*, void*);
|
|
|
|
};
|
|
|
|
class SizedBlock
|
|
{
|
|
public:
|
|
void getByteSize() const;
|
|
|
|
};
|
|
|
|
class StdBufferManager: public uft::BufferManager
|
|
{
|
|
public:
|
|
virtual ~StdBufferManager();
|
|
virtual void alloc(uft::BufferRec*, unsigned int, unsigned int);
|
|
virtual void realloc(uft::BufferRec*, unsigned int);
|
|
virtual void clone(uft::BufferRec const*, uft::BufferRec*, unsigned int);
|
|
virtual void pin(uft::BufferRec*);
|
|
virtual void unpin(uft::BufferRec*);
|
|
virtual void free(uft::BufferRec*);
|
|
virtual void toString(uft::BufferRec const*);
|
|
|
|
void getInstance();
|
|
|
|
};
|
|
|
|
class String
|
|
{
|
|
public:
|
|
String();
|
|
String(char const*);
|
|
String(char const*, unsigned int);
|
|
String(uft::PlatformString const&);
|
|
String(uft::String const&);
|
|
String(uft::TransientStringBuffer const&);
|
|
String(uft::UTF16String const&);
|
|
String(uft::UTF16String const&, unsigned int, unsigned int);
|
|
String(unsigned short const*);
|
|
String(unsigned short const*, unsigned int);
|
|
|
|
~String();
|
|
|
|
void atof() const;
|
|
void atof(char const*);
|
|
void atof(char const*, unsigned int);
|
|
void atom() const;
|
|
void atom(char const*);
|
|
void atom(char const*, unsigned int);
|
|
void atom(unsigned int);
|
|
void atomID() const;
|
|
char* c_str() const;
|
|
int compare(char const*) const;
|
|
int compare(uft::String const&) const;
|
|
int compareRegion(unsigned int, char const*, unsigned int) const;
|
|
int compareRegion(unsigned int, uft::String const&, unsigned int, unsigned int) const;
|
|
bool endsWith(char const*) const;
|
|
bool endsWith(uft::String const&) const;
|
|
void filename(unsigned int) const;
|
|
int findFirstNotOf(char const*, unsigned int) const;
|
|
int findFirstNotOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
int findFirstNotOf(uft::String const&, unsigned int, unsigned int) const;
|
|
int findFirstNotOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
int findFirstOf(char const*, unsigned int) const;
|
|
int findFirstOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
int findFirstOf(uft::String const&, unsigned int, unsigned int) const;
|
|
int findFirstOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
int findLastOf(char const*, unsigned int, unsigned int) const;
|
|
int findLastOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
int findLastOf(uft::String const&, unsigned int, unsigned int) const;
|
|
int findLastOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void getStringBlock() const;
|
|
int indexOf(char const*, unsigned int) const;
|
|
int indexOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
int indexOf(char, unsigned int, unsigned int) const;
|
|
int indexOf(uft::String const&, unsigned int, unsigned int) const;
|
|
int indexOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void initUTF16(unsigned short const*, unsigned int);
|
|
bool isEmpty() const;
|
|
bool isInstanceOf(uft::Value const&);
|
|
bool isXMLName(char const*, unsigned int);
|
|
int lastIndexOf(char const* token, unsigned int endCharacterIdx) const;
|
|
int lastIndexOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
int lastIndexOf(char, unsigned int, unsigned int) const;
|
|
int lastIndexOf(uft::String const&, unsigned int, unsigned int) const;
|
|
int lastIndexOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
int length() const;
|
|
uft::String lowercase() const;
|
|
uft::String nullValue();
|
|
bool operator!=(char const*) const;
|
|
bool operator!=(uft::String const&) const;
|
|
uft::TransientStringBuffer operator+(char const*) const;
|
|
uft::TransientStringBuffer operator+(int) const;
|
|
uft::TransientStringBuffer operator+(uft::String const&) const;
|
|
uft::TransientStringBuffer operator+(uft::Value const&) const;
|
|
String operator=(uft::String const&);
|
|
bool operator==(char const*) const;
|
|
bool operator==(uft::String const&) const;
|
|
void parseASCIIIdent(char const*, uft::String*, bool, char const*);
|
|
void parseDouble(char const*, double*, char const*);
|
|
void parseFloat(char const*, float*, char const*);
|
|
void parseInt(char const*, int*, char const*);
|
|
void parseLong(char const*, long long*, char const*);
|
|
void parseNonWhitespace(char const*, uft::String*, char const*);
|
|
void predefinedAtom(unsigned int);
|
|
void replaceAll(char, char);
|
|
void replaceAll(uft::String const&, uft::String const&);
|
|
void skipWhitespace(char const*, char const*);
|
|
void skipWhitespaceOrComma(char const*, bool*, char const*);
|
|
bool startsWith(char const*) const;
|
|
bool startsWith(uft::String const&) const;
|
|
uft::TransientStringBuffer substr(unsigned int start, unsigned int end) const;
|
|
static uft::String toString(double);
|
|
static uft::String toString(float);
|
|
static uft::String toString(int);
|
|
static uft::String toString(long long);
|
|
void uppercase() const;
|
|
int utf16length() const;
|
|
char* utf8() const;
|
|
int utf8RoundOffLen(char const*, unsigned int);
|
|
int utf8count(char const*, unsigned int, unsigned int);
|
|
|
|
void* s_rawAtomList;
|
|
|
|
};
|
|
|
|
class StringBlock
|
|
{
|
|
public:
|
|
void atomID() const;
|
|
char* utf8();
|
|
|
|
};
|
|
|
|
class StringBuffer
|
|
{
|
|
public:
|
|
StringBuffer(int);
|
|
StringBuffer(uft::Buffer const&, unsigned int, unsigned int);
|
|
StringBuffer(uft::String const&);
|
|
StringBuffer(uft::String const&, unsigned int start);
|
|
StringBuffer(uft::String const&, unsigned int start, unsigned int end);
|
|
StringBuffer(uft::StringBuffer const&);
|
|
StringBuffer(uft::Value const&, char*, unsigned int);
|
|
|
|
~StringBuffer();
|
|
|
|
void append(char const*);
|
|
void append(char const*, unsigned int);
|
|
void append(char);
|
|
void append(float);
|
|
void append(int);
|
|
void append(uft::String const&);
|
|
void append(uft::StringBuffer const&);
|
|
void append(uft::Value const&);
|
|
void compare(char const*) const;
|
|
void compare(uft::String const&) const;
|
|
void compare(uft::StringBuffer const&) const;
|
|
void compareRegion(unsigned int, char const*, unsigned int) const;
|
|
void compareRegion(unsigned int, uft::String const&, unsigned int, unsigned int) const;
|
|
void compareRegion(unsigned int, uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void endsWith(char const*) const;
|
|
void endsWith(char const*, unsigned int) const;
|
|
void endsWith(uft::String const&) const;
|
|
void endsWith(uft::StringBuffer const&) const;
|
|
void findFirstOf(char const*, unsigned int) const;
|
|
void findFirstOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
void findFirstOf(uft::String const&, unsigned int, unsigned int) const;
|
|
void findFirstOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void findLastOf(char const*, unsigned int, unsigned int) const;
|
|
void findLastOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
void findLastOf(uft::String const&, unsigned int, unsigned int) const;
|
|
void findLastOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void indexOf(char const*, unsigned int) const;
|
|
void indexOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
void indexOf(char, unsigned int, unsigned int) const;
|
|
void indexOf(uft::String const&, unsigned int, unsigned int) const;
|
|
void indexOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void isXMLName() const;
|
|
void lastIndexOf(char const*, unsigned int) const;
|
|
void lastIndexOf(char const*, unsigned int, unsigned int, unsigned int) const;
|
|
void lastIndexOf(char, unsigned int, unsigned int) const;
|
|
void lastIndexOf(uft::String const&, unsigned int, unsigned int) const;
|
|
void lastIndexOf(uft::StringBuffer const&, unsigned int, unsigned int) const;
|
|
void lowercase() const;
|
|
void operator!=(char const*) const;
|
|
void operator!=(uft::String const&) const;
|
|
void operator!=(uft::StringBuffer const&) const;
|
|
void operator==(char const*) const;
|
|
void operator==(uft::String const&) const;
|
|
void operator==(uft::StringBuffer const&) const;
|
|
void splice(unsigned int, unsigned int, char const*);
|
|
void splice(unsigned int, unsigned int, char const*, unsigned int);
|
|
void splice(unsigned int, unsigned int, uft::String const&);
|
|
void splice(unsigned int, unsigned int, uft::String const&, unsigned int, unsigned int);
|
|
void splice(unsigned int, unsigned int, uft::StringBuffer const&);
|
|
void splice(unsigned int, unsigned int, uft::StringBuffer const&, unsigned int, unsigned int);
|
|
void splice(unsigned int, unsigned int, uft::Value const&);
|
|
void startsWith(char const*) const;
|
|
void startsWith(char const*, unsigned int) const;
|
|
void startsWith(uft::String const&) const;
|
|
void startsWith(uft::StringBuffer const&) const;
|
|
void substr(unsigned int) const;
|
|
void substr(unsigned int, unsigned int) const;
|
|
void trimWhitespace() const;
|
|
void uppercase() const;
|
|
void utf16length() const;
|
|
char* utf8() const;
|
|
void writableBuffer() const;
|
|
void writableBuffer(unsigned int) const;
|
|
|
|
};
|
|
|
|
class StringBufferStruct
|
|
{
|
|
public:
|
|
StringBufferStruct(uft::Buffer const&, unsigned int, unsigned int);
|
|
StringBufferStruct(uft::Value const&, char*, unsigned int);
|
|
|
|
~StringBufferStruct();
|
|
|
|
};
|
|
|
|
class StringParser: public uft::ValueParser
|
|
{
|
|
public:
|
|
virtual void parse(uft::ParserContext*, uft::Value const&) const;
|
|
virtual void getValidStartChars() const;
|
|
|
|
};
|
|
|
|
class StructBlock
|
|
{
|
|
public:
|
|
void getStructDescriptor();
|
|
void getStructPtr();
|
|
void staticInit();
|
|
|
|
};
|
|
|
|
class StructDescriptor
|
|
{
|
|
public:
|
|
StructDescriptor();
|
|
|
|
};
|
|
|
|
class SubBufferManager: public uft::BufferManager
|
|
{
|
|
public:
|
|
SubBufferManager(uft::Buffer const&, unsigned int);
|
|
|
|
virtual ~SubBufferManager();
|
|
virtual void alloc(uft::BufferRec*, unsigned int, unsigned int);
|
|
virtual void realloc(uft::BufferRec*, unsigned int);
|
|
virtual void clone(uft::BufferRec const*, uft::BufferRec*, unsigned int);
|
|
virtual void pin(uft::BufferRec*);
|
|
virtual void unpin(uft::BufferRec*);
|
|
virtual void free(uft::BufferRec*);
|
|
virtual void toString(uft::BufferRec const*);
|
|
|
|
void init(uft::BufferRec*, uft::Buffer const&, unsigned int, unsigned int, unsigned int);
|
|
|
|
};
|
|
|
|
class Token
|
|
{
|
|
public:
|
|
~Token();
|
|
|
|
void newToken();
|
|
|
|
};
|
|
|
|
class TransientStringBuffer
|
|
{
|
|
public:
|
|
TransientStringBuffer(uft::String const&);
|
|
TransientStringBuffer(uft::String const&, unsigned int, unsigned int);
|
|
TransientStringBuffer(uft::TransientStringBuffer const&);
|
|
|
|
~TransientStringBuffer();
|
|
|
|
void operator+(char const*);
|
|
void operator+(int);
|
|
void operator+(uft::String const&);
|
|
void operator+(uft::Value const&);
|
|
|
|
};
|
|
|
|
class Tuple
|
|
{
|
|
public:
|
|
Tuple();
|
|
Tuple(uft::SizedBlock*);
|
|
Tuple(uft::Value const&);
|
|
Tuple(uft::Value const&, uft::Value const&);
|
|
Tuple(uft::Value const&, uft::Value const&, uft::Value const&);
|
|
Tuple(uft::Value const&, uft::Value const&, uft::Value const&, uft::Value const&);
|
|
Tuple(uft::Value const*, unsigned int);
|
|
|
|
~Tuple();
|
|
|
|
void append(uft::Value const&) const;
|
|
void contains(uft::Value const&) const;
|
|
void emptyValue();
|
|
void insert(unsigned int, uft::Value const&) const;
|
|
void range(unsigned int, unsigned int) const;
|
|
void remove(unsigned int) const;
|
|
void replace(unsigned int, uft::Value const&) const;
|
|
|
|
};
|
|
|
|
class UFTInitializer
|
|
{
|
|
public:
|
|
UFTInitializer();
|
|
|
|
~UFTInitializer();
|
|
|
|
};
|
|
|
|
class URL
|
|
{
|
|
public:
|
|
URL(uft::String const&);
|
|
|
|
~URL();
|
|
|
|
void decode(uft::StringBuffer const&);
|
|
void encode(uft::StringBuffer const&, bool);
|
|
void getBaseURL() const;
|
|
void getDomain() const;
|
|
void getFragment() const;
|
|
void getHost() const;
|
|
void getLogin() const;
|
|
void getParams() const;
|
|
void getParser();
|
|
void getPassword() const;
|
|
void getPath() const;
|
|
void getPort() const;
|
|
void getProtocol() const;
|
|
void getQuery() const;
|
|
void initAbsoluteURL(uft::String const&, uft::String const&);
|
|
void initFileURL(uft::String const&);
|
|
void initOtherURL(uft::String const&, uft::String const&);
|
|
void initRelativeURL(uft::String const&);
|
|
void isAbsolute() const;
|
|
void isSelfReferring() const;
|
|
void parse(char const*, uft::Value*);
|
|
void resolve(uft::URL const&) const;
|
|
|
|
};
|
|
|
|
class URLStruct
|
|
{
|
|
public:
|
|
void constructStandardBaseURL() const;
|
|
void query(uft::Value const&, void*);
|
|
void toString() const;
|
|
|
|
};
|
|
|
|
class UTF16StringBlock {};
|
|
class UTF16String
|
|
{
|
|
public:
|
|
UTF16String(char const*);
|
|
UTF16String(char const*, unsigned int);
|
|
UTF16String(uft::PlatformString const&);
|
|
UTF16String(uft::String const&);
|
|
UTF16String(uft::String const&, unsigned int, unsigned int);
|
|
UTF16String(uft::StringBuffer const&);
|
|
UTF16String(uft::StringBuffer const&, unsigned int, unsigned int);
|
|
UTF16String(uft::UTF16StringBlock*);
|
|
|
|
~UTF16String();
|
|
|
|
void initPlatform(char const*, unsigned int);
|
|
void initUTF8(char const*, unsigned int);
|
|
void isWhiteSpace(unsigned short);
|
|
void length() const;
|
|
void str16len(unsigned short const*);
|
|
void utf16() const;
|
|
void utf16length(char const*, unsigned int);
|
|
|
|
void* s_empty;
|
|
|
|
};
|
|
|
|
class Value
|
|
{
|
|
public:
|
|
Value();
|
|
Value(bool);
|
|
Value(char const*);
|
|
Value(char const*, unsigned int);
|
|
Value(float);
|
|
Value(uft::Value const&);
|
|
|
|
~Value();
|
|
|
|
void addRefStructPtr(void*);
|
|
void allocStruct(uft::StructDescriptor const*);
|
|
Value clone() const;
|
|
void createdCircularReference(uft::Value const&);
|
|
void destroy();
|
|
void enterCircularReferenceCleanup(void*);
|
|
void exitCircularReferenceCleanup(void*);
|
|
void extractValue() const;
|
|
void fromStructPtr(void*);
|
|
BlockHead* getBlock() const;
|
|
void getNumber() const;
|
|
void getStructDescriptor() const;
|
|
void init(char const*);
|
|
void init(char const*, unsigned int);
|
|
void init(char const*, unsigned int, bool, bool);
|
|
void init(double);
|
|
void init(float);
|
|
void init(long long);
|
|
void init(uft::Value const&);
|
|
void init(unsigned short const*);
|
|
void init(unsigned short const*, unsigned int);
|
|
bool isAtom() const;
|
|
bool isFalse() const;
|
|
bool isInstanceOf(uft::StructDescriptor const*) const;
|
|
bool isNull() const;
|
|
bool isNumber() const;
|
|
bool isRefCounted() const;
|
|
bool isString() const;
|
|
bool isStringBuffer() const;
|
|
bool isStruct() const;
|
|
bool isTrue() const;
|
|
void makeNumber(double);
|
|
Value nullValue();
|
|
Value operator=(uft::Value const&);
|
|
void ptrEq(uft::Value const&) const;
|
|
void query(uft::Value const&, void*) const;
|
|
void releaseStructPtr(void*);
|
|
void setNull();
|
|
uft::String toString() const;
|
|
void* toStringOrNull() const;
|
|
void uniqueRef();
|
|
|
|
void* sNull;
|
|
void* m1, *m2, *m3;
|
|
|
|
};
|
|
|
|
class ValueRef
|
|
{
|
|
public:
|
|
ValueRef(uft::Value const&, unsigned int);
|
|
|
|
};
|
|
|
|
class Vector
|
|
{
|
|
public:
|
|
Vector(uft::Value const*, unsigned int);
|
|
Vector(uft::Value);
|
|
Vector(uft::Value, uft::Value const&);
|
|
Vector(uft::Value, uft::Value const&, uft::Value const&);
|
|
Vector(uft::Value, uft::Value const&, uft::Value const&, uft::Value const&);
|
|
Vector(uft::Vector const&);
|
|
Vector(unsigned int, unsigned int);
|
|
|
|
~Vector();
|
|
|
|
virtual void vectorfn0(void) {}
|
|
virtual void vectorfn1(void) {}
|
|
void append(uft::Value const&) const;
|
|
void appendElements(uft::Tuple const&) const;
|
|
void appendElements(uft::Tuple const&, unsigned int, unsigned int) const;
|
|
void appendElements(uft::Vector const&) const;
|
|
void appendElements(uft::Vector const&, unsigned int, unsigned int) const;
|
|
void capacity() const;
|
|
void emptyValue();
|
|
void findFirst(uft::Value const&) const;
|
|
void init(unsigned int, unsigned int);
|
|
void insert(unsigned int, uft::Value const&) const;
|
|
void isInstanceOf(uft::Value const&);
|
|
void lastElement() const;
|
|
void lcs(uft::Vector const&);
|
|
int length() const;
|
|
void makeEmpty() const;
|
|
void nullValue();
|
|
Vector operator=(uft::Vector const&);
|
|
uft::Value operator[](unsigned int) const;
|
|
void pop() const;
|
|
void range(unsigned int, unsigned int) const;
|
|
void rangeToTuple(unsigned int, unsigned int) const;
|
|
void remove(unsigned int) const;
|
|
void setCapacity(unsigned int) const;
|
|
void setLength(unsigned int) const;
|
|
void toTuple() const;
|
|
|
|
};
|
|
|
|
class VectorStruct
|
|
{
|
|
public:
|
|
VectorStruct(uft::VectorStruct const&);
|
|
VectorStruct(unsigned int, unsigned int);
|
|
|
|
~VectorStruct();
|
|
|
|
void setCapacity(unsigned int);
|
|
void setLength(unsigned int);
|
|
void set_manage(uft::Value const&, uft::Set::Action);
|
|
void set_nextItem(unsigned int, uft::Value const**) const;
|
|
void toString() const;
|
|
|
|
};
|
|
|
|
class WeakRef
|
|
{
|
|
public:
|
|
WeakRef(uft::Value const&);
|
|
|
|
};
|
|
|
|
template<typename T>
|
|
class sref{
|
|
public:
|
|
~sref();
|
|
|
|
bool isInstanceOf(uft::Value const&);
|
|
void nullValue();
|
|
T* operator->() const;
|
|
void operator=(uft::sref<T> const&);
|
|
sref();
|
|
sref(uft::sref<T> const&);
|
|
};
|
|
|
|
class TraceFlag{};
|
|
|
|
void UFT_FORMAT_ARGS(char const*, ...);
|
|
void allocBlock(unsigned int);
|
|
void allocBlock(unsigned int, char const*, int);
|
|
void finishCacheIteration(unsigned int);
|
|
void flushCache(uft::CacheFlushContext*);
|
|
void freeBlock(unsigned int, void*);
|
|
void getHeapSize();
|
|
void hash(unsigned char const*, unsigned int, unsigned int);
|
|
void hash4(unsigned int);
|
|
void hash8(unsigned long long);
|
|
void iterateCache(unsigned int*);
|
|
void operator+(char const*, uft::String const&);
|
|
void trace(uft::TraceFlag, char const*, char const*);
|
|
void traceFlush();
|
|
|
|
void* isLittleEndian;
|
|
void* s_bufferDescriptor;
|
|
void* s_cacheRefDescriptor;
|
|
void* s_dateDescriptor;
|
|
void* s_dictDescriptor;
|
|
void* s_doubleDescriptor;
|
|
void* s_lazyCacheRefDescriptor;
|
|
void* s_lazyRefDescriptor;
|
|
void* s_longIntDescriptor;
|
|
void* s_mutableCacheRefDescriptor;
|
|
void* s_mutableRefDescriptor;
|
|
void* s_qnameDescriptor;
|
|
void* s_setDescriptor;
|
|
void* s_simpleRefDescriptor;
|
|
void* s_stringBufferDescriptor;
|
|
void* s_tokenDescriptor;
|
|
void* s_urlDescriptor;
|
|
void* s_vectorDescriptor;
|
|
void* s_weakRefDescriptor;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // _UFT_H
|