mirror of
https://github.com/dlang/phobos.git
synced 2025-05-14 17:05:58 +03:00
Fixed circular dependency between std.datetime and std.encoding.
This commit is contained in:
parent
55493bc90b
commit
48355e6230
4 changed files with 66 additions and 35 deletions
|
@ -157,10 +157,10 @@ MAIN = $(ROOT)/emptymain.d
|
|||
STD_MODULES = $(addprefix std/, algorithm array base64 bigint bitmanip \
|
||||
compiler complex concurrency container contracts conv cpuid \
|
||||
cstream ctype date datetime datebase dateparse demangle \
|
||||
encoding exception file format functional getopt gregorian \
|
||||
json loader math mathspecial md5 metastrings mmfile numeric \
|
||||
outbuffer parallelism path perf process random range regex \
|
||||
regexp signals socket socketstream stdint stdio stdiobase \
|
||||
encoding encodingbase exception file format functional getopt \
|
||||
gregorian json loader math mathspecial md5 metastrings mmfile \
|
||||
numeric outbuffer parallelism path perf process random range \
|
||||
regex regexp signals socket socketstream stdint stdio stdiobase \
|
||||
stream string syserror system traits typecons typetuple uni \
|
||||
uri utf variant xml zip zlib)
|
||||
|
||||
|
|
|
@ -2379,11 +2379,6 @@ abstract class EncodingScheme
|
|||
*/
|
||||
class EncodingSchemeASCII : EncodingScheme
|
||||
{
|
||||
shared static this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeASCII");
|
||||
}
|
||||
|
||||
const
|
||||
{
|
||||
override string[] names()
|
||||
|
@ -2449,6 +2444,12 @@ class EncodingSchemeASCII : EncodingScheme
|
|||
}
|
||||
}
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeASCII_static_this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeASCII");
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
EncodingScheme to handle Latin-1
|
||||
|
||||
|
@ -2465,11 +2466,6 @@ class EncodingSchemeASCII : EncodingScheme
|
|||
*/
|
||||
class EncodingSchemeLatin1 : EncodingScheme
|
||||
{
|
||||
shared static this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeLatin1");
|
||||
}
|
||||
|
||||
const
|
||||
{
|
||||
override string[] names()
|
||||
|
@ -2533,6 +2529,11 @@ class EncodingSchemeLatin1 : EncodingScheme
|
|||
}
|
||||
}
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeLatin1_static_this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeLatin1");
|
||||
}
|
||||
|
||||
/**
|
||||
EncodingScheme to handle Windows-1252
|
||||
|
||||
|
@ -2541,11 +2542,6 @@ class EncodingSchemeLatin1 : EncodingScheme
|
|||
*/
|
||||
class EncodingSchemeWindows1252 : EncodingScheme
|
||||
{
|
||||
shared static this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeWindows1252");
|
||||
}
|
||||
|
||||
const
|
||||
{
|
||||
override string[] names()
|
||||
|
@ -2601,6 +2597,11 @@ class EncodingSchemeWindows1252 : EncodingScheme
|
|||
}
|
||||
}
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeWindows1252_static_this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeWindows1252");
|
||||
}
|
||||
|
||||
/**
|
||||
EncodingScheme to handle UTF-8
|
||||
|
||||
|
@ -2609,11 +2610,6 @@ class EncodingSchemeWindows1252 : EncodingScheme
|
|||
*/
|
||||
class EncodingSchemeUtf8 : EncodingScheme
|
||||
{
|
||||
shared static this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeUtf8");
|
||||
}
|
||||
|
||||
const
|
||||
{
|
||||
override string[] names()
|
||||
|
@ -2669,6 +2665,11 @@ class EncodingSchemeUtf8 : EncodingScheme
|
|||
}
|
||||
}
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeUtf8_static_this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeUtf8");
|
||||
}
|
||||
|
||||
/**
|
||||
EncodingScheme to handle UTF-16 in native byte order
|
||||
|
||||
|
@ -2678,11 +2679,6 @@ class EncodingSchemeUtf8 : EncodingScheme
|
|||
*/
|
||||
class EncodingSchemeUtf16Native : EncodingScheme
|
||||
{
|
||||
shared static this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeUtf16Native");
|
||||
}
|
||||
|
||||
const
|
||||
{
|
||||
version(LittleEndian) { enum string NAME = "UTF-16LE"; }
|
||||
|
@ -2747,6 +2743,11 @@ class EncodingSchemeUtf16Native : EncodingScheme
|
|||
}
|
||||
}
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeUtf16Native_static_this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeUtf16Native");
|
||||
}
|
||||
|
||||
/**
|
||||
EncodingScheme to handle UTF-32 in native byte order
|
||||
|
||||
|
@ -2756,11 +2757,6 @@ class EncodingSchemeUtf16Native : EncodingScheme
|
|||
*/
|
||||
class EncodingSchemeUtf32Native : EncodingScheme
|
||||
{
|
||||
shared static this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeUtf32Native");
|
||||
}
|
||||
|
||||
const
|
||||
{
|
||||
version(LittleEndian) { enum string NAME = "UTF-32LE"; }
|
||||
|
@ -2825,6 +2821,11 @@ class EncodingSchemeUtf32Native : EncodingScheme
|
|||
}
|
||||
}
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeUtf32Native_static_this()
|
||||
{
|
||||
EncodingScheme.register("std.encoding.EncodingSchemeUtf32Native");
|
||||
}
|
||||
|
||||
//=============================================================================
|
||||
|
||||
|
||||
|
|
29
std/encodingbase.d
Normal file
29
std/encodingbase.d
Normal file
|
@ -0,0 +1,29 @@
|
|||
// Written in the D programming language.
|
||||
|
||||
/++
|
||||
The only purpose of this module is to do the static construction for
|
||||
std.encoding, to eliminate cyclic construction errors.
|
||||
|
||||
Copyright: Copyright Digital Mars 2011 -
|
||||
License: $(WEB www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
|
||||
Authors: Jonathan M Davis
|
||||
Source: $(PHOBOSSRC std/_encodingbase.d)
|
||||
+/
|
||||
module std.encodingbase;
|
||||
|
||||
extern(C) void std_encoding_EncodingSchemeASCII_static_this();
|
||||
extern(C) void std_encoding_EncodingSchemeLatin1_static_this();
|
||||
extern(C) void std_encoding_EncodingSchemeWindows1252_static_this();
|
||||
extern(C) void std_encoding_EncodingSchemeUtf8_static_this();
|
||||
extern(C) void std_encoding_EncodingSchemeUtf16Native_static_this();
|
||||
extern(C) void std_encoding_EncodingSchemeUtf32Native_static_this();
|
||||
|
||||
shared static this()
|
||||
{
|
||||
std_encoding_EncodingSchemeASCII_static_this();
|
||||
std_encoding_EncodingSchemeLatin1_static_this();
|
||||
std_encoding_EncodingSchemeWindows1252_static_this();
|
||||
std_encoding_EncodingSchemeUtf8_static_this();
|
||||
std_encoding_EncodingSchemeUtf16Native_static_this();
|
||||
std_encoding_EncodingSchemeUtf32Native_static_this();
|
||||
}
|
|
@ -124,6 +124,7 @@ SRCS_3 = std\variant.d \
|
|||
std\stream.d std\socket.d std\socketstream.d \
|
||||
std\perf.d std\container.d std\conv.d \
|
||||
std\zip.d std\cstream.d std\loader.d \
|
||||
std\encodingbase.d \
|
||||
std\__fileinit.d \
|
||||
std\datebase.d \
|
||||
std\regex.d \
|
||||
|
@ -271,7 +272,7 @@ SRC_STD= std\zlib.d std\zip.d std\stdint.d std\container.d std\conv.d std\utf.d
|
|||
std\json.d std\xml.d std\encoding.d std\bigint.d std\concurrency.d \
|
||||
std\range.d std\stdiobase.d std\parallelism.d \
|
||||
std\regex.d std\datebase.d \
|
||||
std\__fileinit.d std\gregorian.d std\exception.d
|
||||
std\__fileinit.d std\gregorian.d std\exception.d std\encodingbase.d
|
||||
|
||||
SRC_STD_NET= std\net\isemail.d
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue