mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-09 03:52:19 +02:00
Improved string table usage tracking
This commit is contained in:
parent
bb2fe56dc9
commit
9d79db063b
6 changed files with 94 additions and 55 deletions
|
@ -1538,12 +1538,12 @@ public:
|
|||
BfIRValue CreateStringCharPtr(const StringImpl& str, int stringId, bool define);
|
||||
int GetStringPoolIdx(BfIRValue constantStr, BfIRConstHolder* constHolder = NULL);
|
||||
String* GetStringPoolString(BfIRValue constantStr, BfIRConstHolder* constHolder = NULL);
|
||||
BfIRValue GetStringCharPtr(int stringId);
|
||||
BfIRValue GetStringCharPtr(BfIRValue strValue);
|
||||
BfIRValue GetStringCharPtr(const StringImpl& str);
|
||||
BfIRValue GetStringObjectValue(int idx);
|
||||
BfIRValue GetStringObjectValue(const StringImpl& str, bool define = false);
|
||||
BfIRValue CreateGlobalConstValue(const StringImpl& name, BfIRValue constant, BfIRType type, bool external);
|
||||
BfIRValue GetStringCharPtr(int stringId, bool force = false);
|
||||
BfIRValue GetStringCharPtr(BfIRValue strValue, bool force = false);
|
||||
BfIRValue GetStringCharPtr(const StringImpl& str, bool force = false);
|
||||
BfIRValue GetStringObjectValue(int idx, bool define, bool force);
|
||||
BfIRValue GetStringObjectValue(const StringImpl& str, bool define = false, bool force = false);
|
||||
BfIRValue CreateGlobalConstValue(const StringImpl& name, BfIRValue constant, BfIRType type, bool external);
|
||||
void VariantToString(StringImpl& str, const BfVariant& variant);
|
||||
StringT<128> TypeToString(BfType* resolvedType, Array<String>* genericMethodParamNameOverrides = NULL);
|
||||
StringT<128> TypeToString(BfType* resolvedType, BfTypeNameFlags typeNameFlags, Array<String>* genericMethodParamNameOverrides = NULL);
|
||||
|
@ -1553,8 +1553,9 @@ public:
|
|||
void pm(BfMethodInstance* type);
|
||||
void CurrentAddToConstHolder(BfIRValue& irVal);
|
||||
void ClearConstData();
|
||||
BfTypedValue GetTypedValueFromConstant(BfConstant* constant, BfIRConstHolder* constHolder, BfType* wantType);
|
||||
BfIRValue ConstantToCurrent(BfConstant* constant, BfIRConstHolder* constHolder, BfType* wantType, bool allowStringId = false);
|
||||
bool HasUnactializedConstant(BfConstant* constant, BfIRConstHolder* constHolder);
|
||||
BfTypedValue GetTypedValueFromConstant(BfConstant* constant, BfIRConstHolder* constHolder, BfType* wantType);
|
||||
BfIRValue ConstantToCurrent(BfConstant* constant, BfIRConstHolder* constHolder, BfType* wantType, bool allowUnactualized = false);
|
||||
void ValidateCustomAttributes(BfCustomAttributes* customAttributes, BfAttributeTargets attrTarget);
|
||||
void GetCustomAttributes(BfCustomAttributes* customAttributes, BfAttributeDirective* attributesDirective, BfAttributeTargets attrType, bool allowNonConstArgs = false, BfCaptureInfo* captureInfo = NULL);
|
||||
BfCustomAttributes* GetCustomAttributes(BfAttributeDirective* attributesDirective, BfAttributeTargets attrType, bool allowNonConstArgs = false, BfCaptureInfo* captureInfo = NULL);
|
||||
|
@ -1771,8 +1772,8 @@ public:
|
|||
BfMethodRefType* CreateMethodRefType(BfMethodInstance* methodInstance, bool mustAlreadyExist = false);
|
||||
BfType* FixIntUnknown(BfType* type);
|
||||
void FixIntUnknown(BfTypedValue& typedVal, BfType* matchType = NULL);
|
||||
void FixIntUnknown(BfTypedValue& lhs, BfTypedValue& rhs);
|
||||
void FixValueActualization(BfTypedValue& typedVal);
|
||||
void FixIntUnknown(BfTypedValue& lhs, BfTypedValue& rhs);
|
||||
void FixValueActualization(BfTypedValue& typedVal, bool force = false);
|
||||
bool TypeEquals(BfTypedValue& val, BfType* type);
|
||||
BfTypeDef* ResolveGenericInstanceDef(BfGenericInstanceTypeRef* genericTypeRef, BfType** outType = NULL, BfResolveTypeRefFlags resolveFlags = BfResolveTypeRefFlag_None);
|
||||
BfType* ResolveType(BfType* lookupType, BfPopulateType populateType = BfPopulateType_Data, BfResolveTypeRefFlags resolveFlags = BfResolveTypeRefFlag_None);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue