From 7774bb92669779fd165a0510a360fdaecd69f0c3 Mon Sep 17 00:00:00 2001 From: Mark Spruiell Date: Tue, 8 May 2012 18:14:39 -0700 Subject: * C++ implementation for compact/sliced formats * C++ implementation for "preserve-slice" metadata * C++ tests for compact/sliced/preserved types * Updated stream API * Python changes for stream API * Python tests for compact/sliced formats * Added Ice.Default.SlicedFormat property --- cpp/include/Slice/Parser.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'cpp/include/Slice/Parser.h') diff --git a/cpp/include/Slice/Parser.h b/cpp/include/Slice/Parser.h index 16e5f8bae91..ab0a2ebc929 100644 --- a/cpp/include/Slice/Parser.h +++ b/cpp/include/Slice/Parser.h @@ -69,6 +69,16 @@ SLICE_API enum NodeType Real }; +// +// Format preference for classes and exceptions. +// +SLICE_API enum FormatType +{ + DefaultFormat, // No preference was specified. + CompactFormat, // Minimal format. + SlicedFormat // Full format. +}; + class GrammarBase; class SyntaxTreeBase; class Type; @@ -354,6 +364,8 @@ public: void setMetaData(const std::list&); void addMetaData(const std::string&); // TODO: remove this method once "cs:" and "vb:" are hard errors. + static FormatType parseFormatMetaData(const std::list&); + enum ContainedType { ContainedTypeSequence, @@ -580,6 +592,7 @@ public: bool returnsClasses() const; bool returnsData() const; int attributes() const; + FormatType format() const; virtual std::string kindOf() const; virtual void visit(ParserVisitor*, bool); -- cgit v1.2.3