THRIFT-413. Suppport for annotations on base types

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@798219 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
David Reiss 2009-07-27 17:02:42 +00:00
parent bbd55ad8da
commit c8e300533c
2 changed files with 17 additions and 1 deletions

View File

@ -154,6 +154,7 @@ int g_arglist = 0;
*/
%type<ttype> BaseType
%type<ttype> SimpleBaseType
%type<ttype> ContainerType
%type<ttype> SimpleContainerType
%type<ttype> MapType
@ -976,7 +977,19 @@ FieldType:
$$ = $1;
}
BaseType:
BaseType: SimpleBaseType TypeAnnotations
{
pdebug("BaseType -> SimpleBaseType TypeAnnotations");
if ($2 != NULL) {
$$ = new t_base_type(*static_cast<t_base_type*>($1));
$$->annotations_ = $2->annotations_;
delete $2;
} else {
$$ = $1;
}
}
SimpleBaseType:
tok_string
{
pdebug("BaseType -> tok_string");

View File

@ -29,3 +29,6 @@ struct foo {
python.type = "DenseFoo",
java.final = "",
)
typedef string ( unicode.encoding = "UTF-16" ) non_latin_string
typedef list< double ( cpp.fixed_point = "16" ) > tiny_float_list