Browse Source

* Dotted filenames for package fcl-json

Michaël Van Canneyt 2 years ago
parent
commit
8d7a1585d7

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Apply.pp

@@ -0,0 +1,3 @@
+unit FpJson.Apply;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpjsonapply.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Conf.pp

@@ -0,0 +1,3 @@
+unit FpJson.Conf;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i jsonconf.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Data.pp

@@ -0,0 +1,3 @@
+unit FpJson.Data;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpjson.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Fpjson.pp

@@ -0,0 +1,3 @@
+unit FpJson.Fpjson;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpjson.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Ini.pp

@@ -0,0 +1,3 @@
+unit FpJson.Ini;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i jsonini.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Json2Yaml.pp

@@ -0,0 +1,3 @@
+unit FpJson.Json2Yaml;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i json2yaml.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Parser.pp

@@ -0,0 +1,3 @@
+unit FpJson.Parser;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i jsonparser.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Reader.pp

@@ -0,0 +1,3 @@
+unit FpJson.Reader;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i jsonreader.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Rtti.pp

@@ -0,0 +1,3 @@
+unit FpJson.Rtti;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpjsonrtti.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Scanner.pp

@@ -0,0 +1,3 @@
+unit FpJson.Scanner;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i jsonscanner.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.ToPas.pp

@@ -0,0 +1,3 @@
+unit FpJson.ToPas;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpjsontopas.pp}

+ 3 - 0
packages/fcl-json/namespaced/FpJson.Value.pp

@@ -0,0 +1,3 @@
+unit FpJson.Value;
+{$DEFINE FPC_DOTTEDUNITS}
+{$i fpjsonvalue.pp}

+ 14 - 0
packages/fcl-json/namespaces.lst

@@ -0,0 +1,14 @@
+src/fpjsontopas.pp=namespaced/FpJson.ToPas.pp
+{s*:src/}=namespaced/
+{i+:src/}
+src/jsonini.pp=namespaced/FpJson.Ini.pp
+src/fpjson.pp=namespaced/FpJson.Data.pp
+src/jsonscanner.pp=namespaced/FpJson.Scanner.pp
+src/json2yaml.pp=namespaced/FpJson.Json2Yaml.pp
+src/fpjsonrtti.pp=namespaced/FpJson.Rtti.pp
+src/fpjsonapply.pp=namespaced/FpJson.Apply.pp
+src/fpjsonvalue.pp=namespaced/FpJson.Value.pp
+src/jsonparser.pp=namespaced/FpJson.Parser.pp
+src/jsonreader.pp=namespaced/FpJson.Reader.pp
+src/jsonconf.pp=namespaced/FpJson.Conf.pp
+src/jsonfpcunit.pp=namespaced/FpJson.FpcUnit.pp

+ 24 - 1
packages/fcl-json/src/fpjson.pp

@@ -12,12 +12,26 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpjson;
+{$ENDIF FPC_DOTTEDUNITS}
 
 {$i fcl-json.inc}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  {$IFNDEF PAS2JS}
+  System.Variants,
+  {$ENDIF}
+  {$IFDEF PAS2JS}
+  JS, System.RtlConsts, System.Types,
+  {$ENDIF}
+  System.SysUtils,
+  System.Classes,
+  System.Contnrs;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   {$IFNDEF PAS2JS}
   variants,
@@ -28,6 +42,7 @@ uses
   SysUtils,
   classes,
   contnrs;
+{$ENDIF FPC_DOTTEDUNITS}
 
 type
   TJSONtype = (jtUnknown, jtNumber, jtString, jtBoolean, jtNull, jtArray, jtObject);
@@ -803,7 +818,11 @@ Function GetJSONStringParserHandler: TJSONStringParserHandler;
 
 implementation
 
+{$IFDEF FPC_DOTTEDUNITS}
+Uses System.TypInfo;
+{$ELSE FPC_DOTTEDUNITS}
 Uses typinfo;
+{$ENDIF FPC_DOTTEDUNITS}
 
 {$IFNDEF Pas2js}
 const
@@ -2002,7 +2021,11 @@ end;
 
 function TJSONNull.GetValue: TJSONVariant;
 begin
-  Result:={$IFDEF PAS2JS}js.Null{$else}variants.Null{$ENDIF};
+  {$IFDEF PAS2JS}
+    Result:=js.Null;
+  {$ELSE PAS2JS}
+    Result:={$IFDEF FPC_DOTTEDUNITS}System.{$ENDIF}variants.Null;
+  {$ENDIF}
 end;
 
 procedure TJSONNull.SetValue(const AValue: TJSONVariant);

+ 7 - 0
packages/fcl-json/src/fpjsonapply.pp

@@ -12,14 +12,21 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpjsonapply;
+{$ENDIF FPC_DOTTEDUNITS}
 
 {$mode ObjFPC}{$H+}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, FpJson.Data;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   Classes, SysUtils, fpJSON;
+{$ENDIF FPC_DOTTEDUNITS}
 
 Type
   TOwnsJSON = (ojSource,ojApply);

+ 11 - 0
packages/fcl-json/src/fpjsonrtti.pp

@@ -1,4 +1,6 @@
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpjsonrtti;
+{$ENDIF FPC_DOTTEDUNITS}
 {
     This file is part of the Free Pascal run time library.
     Copyright (c) 1999-2022 by Michael van Canney and other members of the
@@ -19,8 +21,13 @@ unit fpjsonrtti;
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, System.Contnrs, System.TypInfo, FpJson.Data, Fcl.RttiUtils, FpJson.Parser;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   Classes, SysUtils, contnrs, typinfo, fpjson, rttiutils, jsonparser;
+{$ENDIF FPC_DOTTEDUNITS}
 
 Const
   RFC3339DateTimeFormat = 'yyyy"-"mm"-"dd"T"hh":"nn":"ss';
@@ -194,7 +201,11 @@ Type
 
 implementation
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses System.DateUtils, System.Variants, System.RtlConsts;
+{$ELSE FPC_DOTTEDUNITS}
 uses dateutils, variants, rtlconsts;
+{$ENDIF FPC_DOTTEDUNITS}
 
 ResourceString
   SErrUnknownPropertyKind     = 'Unknown property kind for property : "%s"';

+ 7 - 0
packages/fcl-json/src/fpjsontopas.pp

@@ -13,7 +13,9 @@
 
  **********************************************************************}
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpjsontopas;
+{$ENDIF FPC_DOTTEDUNITS}
 
 // TODO : Array of Array LoadFromJSON/SaveToJSON
 
@@ -21,8 +23,13 @@ unit fpjsontopas;
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, FpJson.Data, FpJson.Parser;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   Classes, SysUtils, fpjson, jsonparser;
+{$ENDIF FPC_DOTTEDUNITS}
 
 Type
   EJSONToPascal = Class(EJSON);

+ 11 - 0
packages/fcl-json/src/fpjsonvalue.pp

@@ -12,21 +12,32 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit fpjsonvalue;
+{$ENDIF FPC_DOTTEDUNITS}
 
 {$mode ObjFPC}{$H+}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  FpJson.Data, System.Rtti;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   fpjson, rtti;
+{$ENDIF FPC_DOTTEDUNITS}
 
 function ValueToJSON(const aValue: TValue; aType: TRttiType): TJSONData;
 function JSONToValue(aData: TJSONData; aType: TRttiType): TValue;
 
 Implementation
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses System.TypInfo;
+{$ELSE FPC_DOTTEDUNITS}
 uses typinfo;
+{$ENDIF FPC_DOTTEDUNITS}
 
 function ValueToJSON(const aValue: TValue; aType: TRttiType): TJSONData;
 var

+ 7 - 1
packages/fcl-json/src/json2yaml.pp

@@ -12,14 +12,20 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit json2yaml;
+{$ENDIF FPC_DOTTEDUNITS}
 
 {$MODE OBJFPC}
 {$H+}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses System.Classes,FpJson.Data;
+{$ELSE FPC_DOTTEDUNITS}
 uses classes,fpjson;
+{$ENDIF FPC_DOTTEDUNITS}
 
 Type
 
@@ -127,7 +133,7 @@ begin
       begin
       D:=JSON.Items[I];
       N:=JSON.Names[I];
-      if D.JSONType in fpjson.StructuredJSONTypes then
+      if D.JSONType in fpjson.{$IFDEF FPC_DOTTEDUNITS}Data.{$ENDIF}StructuredJSONTypes then
         begin
         Push(N+': ');
         Indent('');

+ 7 - 0
packages/fcl-json/src/jsonconf.pp

@@ -23,12 +23,19 @@
 {$H+}
 {$ENDIF}
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit jsonConf;
+{$ENDIF FPC_DOTTEDUNITS}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.SysUtils, System.Classes, FpJson.Data, FpJson.Scanner, FpJson.Parser;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   SysUtils, Classes, fpjson, jsonscanner, jsonparser;
+{$ENDIF FPC_DOTTEDUNITS}
 
 Const
   DefaultJSONOptions = [joUTF8,joComments,joBOMCheck];

+ 10 - 0
packages/fcl-json/src/jsonfpcunit.pp

@@ -12,7 +12,9 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit jsonfpcunit;
+{$ENDIF}
 
 {$mode objfpc}
 {$H+}
@@ -21,7 +23,11 @@ unit jsonfpcunit;
 interface
 
 uses
+{$IFDEF FPC_DOTTEDUNITS}
+  System.Classes, System.SysUtils, FpJson.Data, FpcUnit.Test;
+{$ELSE}  
   Classes, SysUtils, fpjson, fpcunit;
+{$ENDIF}
 
 Type
 
@@ -90,7 +96,11 @@ Type
 
 implementation
 
+{$IFNDEF FPC_DOTTEDUNITS}
 uses typinfo;
+{$ELSE}
+uses System.TypInfo;
+{$ENDIF}
 
 resourcestring
   SDataNotNull = ': Data is not null';

+ 7 - 0
packages/fcl-json/src/jsonini.pp

@@ -1,4 +1,6 @@
+{$IFNDEF FPC_DOTTEDUNITS}
 unit jsonini;
+{$ENDIF FPC_DOTTEDUNITS}
 {
     This file is part of the Free Pascal run time library.
     Copyright (c) 1999-2022 by Michael van Canney and other members of the
@@ -20,8 +22,13 @@ unit jsonini;
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, System.IniFiles, FpJson.Data, FpJson.Scanner, FpJson.Parser, System.DateUtils;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   Classes, SysUtils, inifiles, fpjson, jsonscanner, jsonparser, dateutils;
+{$ENDIF FPC_DOTTEDUNITS}
 
 type
 

+ 8 - 1
packages/fcl-json/src/jsonparser.pp

@@ -14,12 +14,19 @@
  **********************************************************************}
 {$mode objfpc}
 {$h+}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit jsonparser;
+{$ENDIF FPC_DOTTEDUNITS}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, FpJson.Data, FpJson.Scanner, FpJson.Reader;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   Classes, SysUtils, fpJSON, jsonscanner, jsonreader;
+{$ENDIF FPC_DOTTEDUNITS}
   
 Type
 
@@ -53,7 +60,7 @@ Type
     function Parse: TJSONData;
   end;
   
-  EJSONParser = jsonReader.EJSONParser;
+  EJSONParser = {$IFDEF FPC_DOTTEDUNITS}FpJson.Reader{$ELSE}jsonReader{$ENDIF}.EJSONParser;
   
 implementation
 

+ 7 - 0
packages/fcl-json/src/jsonreader.pp

@@ -12,14 +12,21 @@
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
  **********************************************************************}
+{$IFNDEF FPC_DOTTEDUNITS}
 unit jsonreader;
+{$ENDIF FPC_DOTTEDUNITS}
 
 {$I fcl-json.inc}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses
+  System.Classes, System.SysUtils, FpJson.Data, FpJson.Scanner;
+{$ELSE FPC_DOTTEDUNITS}
 uses
   Classes, SysUtils, fpJSON, jsonscanner;
+{$ENDIF FPC_DOTTEDUNITS}
   
 Type
 

+ 6 - 0
packages/fcl-json/src/jsonscanner.pp

@@ -16,11 +16,17 @@
 {$h+}
 { $INLINE ON}
 
+{$IFNDEF FPC_DOTTEDUNITS}
 unit jsonscanner;
+{$ENDIF FPC_DOTTEDUNITS}
 
 interface
 
+{$IFDEF FPC_DOTTEDUNITS}
+uses System.SysUtils, System.Classes;
+{$ELSE FPC_DOTTEDUNITS}
 uses SysUtils, Classes;
+{$ENDIF FPC_DOTTEDUNITS}
 
 resourcestring
   SErrInvalidCharacter = 'Invalid character at line %d, pos %d: ''%s''';