aboutsummaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2011-06-02 04:37:21 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2011-06-02 04:37:21 +0200
commit5e7c109f2a401ef8f4d898bf59fb643c7c7eeed0 (patch)
tree0ce0829214f4a5471535182db57714f866f2d045 /NEWS
parent644b8d4495bb9e3979c221098b9e3b1c5b1ca278 (diff)
Add support for fat type files
Such files also contain all the global elements that this type classifies.
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS47
1 files changed, 28 insertions, 19 deletions
diff --git a/NEWS b/NEWS
index 35adb79..71f211a 100644
--- a/NEWS
+++ b/NEWS
@@ -1,13 +1,22 @@
+Version 3.3.0
+
+ * New option, --fat-type-file, triggers the generation of code
+ corresponding to global elements into type files instead of schema
+ files in the file-per-type mode. This option is primarily useful
+ when trying to minimize the amount of object code that is linked
+ to an executable by packaging compiled generated code into a static
+ (archive) library.
+
Version 3.2.0
* Support for ISO-8859-1 in addition to UTF-8 as application encoding.
- Note that this encoding is not the same as the XML document encoding
- that is being parsed or serialized. Rather, it is the encoding that
+ Note that this encoding is not the same as the XML document encoding
+ that is being parsed or serialized. Rather, it is the encoding that
is used inside the application. When an XML document is parsed, the
character data is automatically converted to the application encoding.
Similarly, when an XML document is serialized, the data in the
application encoding is automatically converted to the resulting
- document encoding. To select a particular encoding, configure the
+ document encoding. To select a particular encoding, configure the
XSD/e runtime library accordingly and pass the --char-encoding option
to the XSD/e compiler when translating your schemas.
@@ -27,19 +36,19 @@ Version 3.2.0
in the urn name is used to derive the C++ namespace name.
* New option, --schema-file-regex, in combination with the existing
- --type-file-regex, can be used to place the generated files into
+ --type-file-regex, can be used to place the generated files into
subdirectories or to resolve file name conflicts in the file-per-
type mode (--file-per-type).
* Strings used to match regular expression supplied with the
- --namespace-regex and --anonymous-regex options now include the file
+ --namespace-regex and --anonymous-regex options now include the file
component for the schema being compiled.
C++/Hybrid
- * String-based types that use XML Schema restriction by enumeration are
- now mapped to C++ classes with semantics similar to C++ enum. You can
- suppress this new mapping and instead get the old behavior (plain
+ * String-based types that use XML Schema restriction by enumeration are
+ now mapped to C++ classes with semantics similar to C++ enum. You can
+ suppress this new mapping and instead get the old behavior (plain
inheritance) by specifying the --suppress-enum compiler option. See
Section 4.3, "Enumerations" in the Getting Started Guide for more
information.
@@ -75,15 +84,15 @@ Version 3.2.0
* When the code is generated with the --generate-polymorphic or
--runtime-polymorphic option, the resulting parser and serializer
- aggregate classes provide the static polymorphic() function which
- returns true if the object model corresponding to the root element
- or root type is polymorphic and false otherwise. This can be used
+ aggregate classes provide the static polymorphic() function which
+ returns true if the object model corresponding to the root element
+ or root type is polymorphic and false otherwise. This can be used
together with the XSDE_POLYMORPHIC macro to implement generic parsing
and serialization code that works with both polymorphic and non-
polymorphic object models.
- * XML Schema union types with members that are enumeration types are
- automatically converted to equivalent enumeration types with a union
+ * XML Schema union types with members that are enumeration types are
+ automatically converted to equivalent enumeration types with a union
of all the member's enumerators.
C++/Parser
@@ -154,7 +163,7 @@ Version 3.1.0
Custom representations can be supported by implementing insertion and
extraction operators for the built-in XML Schema types and sequence
templates. For more information, see Chapter 7, "Binary Representation"
- in the Getting Started Guide as well as examples in the
+ in the Getting Started Guide as well as examples in the
examples/cxx/hybrid/binary/ directory.
* Support for attributes with default and fixed values. For details see
@@ -166,7 +175,7 @@ Version 3.1.0
classes. You have the option of either basing your custom implementation
on the generated version or providing your own implementation from
scratch. For details see Section 4.8, "Customizing the Object Model"
- in the Getting Started Guide as well as examples in the
+ in the Getting Started Guide as well as examples in the
examples/cxx/hybrid/custom/ directory.
* New option, --generate-detach, triggers the generation of detach
@@ -184,8 +193,8 @@ Version 3.1.0
* Assignment function with signature assign(const T*, size_t) for
sequences of fixed-length types. With this function you can, for
- example, initialize a sequence with a C array. Assignment of
- sequences of fundamental types (e.g., int, float, etc.) is
+ example, initialize a sequence with a C array. Assignment of
+ sequences of fundamental types (e.g., int, float, etc.) is
implemented in terms of memcpy().
C++/Serializer
@@ -193,7 +202,7 @@ Version 3.1.0
* Support for XML pretty-printing. The serialize() functions in the
xml_schema::document_simpl class now have the flags argument (defaults
to 0). You can pass the xml_schema::document_simpl::pretty_print flag
- for this argument to turn on pretty-printing. See the examples and
+ for this argument to turn on pretty-printing. See the examples and
documentation for details.
Version 3.0.0
@@ -298,7 +307,7 @@ Version 2.1.0
for details.
* Support for parser reuse after an error. For more information refer
- to Section 7.4, "Reusing Parsers after an Error" in the Embedded
+ to Section 7.4, "Reusing Parsers after an Error" in the Embedded
C++/Parser Mapping Getting Started Guide. To suppress generation
of the reset code use the --suppress-reset option.