diff --git a/src/shared/exoma.pas b/src/shared/exoma.pas
index 1931dbbee9c973bbbf4840714fbe4fdcda91f8fe..6b6c12d698023fd0cd42a37a268a5ff51e6abc04 100644 (file)
--- a/src/shared/exoma.pas
+++ b/src/shared/exoma.pas
interface
uses
- typinfo, SysUtils, Variants, mempool, hashtable, xparser;
+ {$IFDEF USE_MEMPOOL}mempool,{$ENDIF}
+ typinfo, SysUtils, Variants,
+ hashtable, xparser;
// ////////////////////////////////////////////////////////////////////////// //
// ////////////////////////////////////////////////////////////////////////// //
type
- TPropHash = class(TPoolObject)
+ TPropHash = class{$IFDEF USE_MEMPOOL}(TPoolObject){$ENDIF}
private
mClass: TClass;
mNames: THashStrInt;
// ////////////////////////////////////////////////////////////////////////// //
type
- TExprConstList = class(TPoolObject)
+ TExprConstList = class{$IFDEF USE_MEMPOOL}(TPoolObject){$ENDIF}
public
function valid (const cname: AnsiString): Boolean; virtual; abstract;
function get (const cname: AnsiString; out v: Variant): Boolean; virtual; abstract;
// ////////////////////////////////////////////////////////////////////////// //
type
- TExprScope = class(TPoolObject)
+ TExprScope = class{$IFDEF USE_MEMPOOL}(TPoolObject){$ENDIF}
public
class procedure error (const amsg: AnsiString);
class procedure errorfmt (const afmt: AnsiString; const args: array of const);
procedure setField (obj: TObject; const afldname: AnsiString; var aval: Variant); virtual;
end;
- TExprBase = class(TPoolObject)
+ TExprBase = class{$IFDEF USE_MEMPOOL}(TPoolObject){$ENDIF}
public
class function coerce2bool (var v0: Variant): Boolean;
class function toInt (var v: Variant): LongInt;
n: AnsiString;
begin
mClass := aklass;
- mNames := hashNewStrInt();
+ mNames := THashStrInt.Create();
pi := aklass.ClassInfo;
pt := GetTypeData(pi);
GetMem(pl, pt^.PropCount*sizeof(Pointer));