summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhyunho <hhstark.kang@samsung.com>2020-06-25 17:48:48 +0900
committerhyunho <hhstark.kang@samsung.com>2020-07-03 14:26:33 +0900
commitc70a1fef91b9eeef16bc530587bdb1b76f837b27 (patch)
tree282dc664f6c4b10b3110afca1af9a811b119709d
parent6b6823f7f954b9030ac2f1b2bb7a288d55560243 (diff)
downloadtidl-c70a1fef91b9eeef16bc530587bdb1b76f837b27.tar.gz
tidl-c70a1fef91b9eeef16bc530587bdb1b76f837b27.tar.bz2
tidl-c70a1fef91b9eeef16bc530587bdb1b76f837b27.zip
Use receiving thread for cpp stub
Change-Id: I934cac8c5efbb150aa60333842074f602458d0ee Signed-off-by: hyunho <hhstark.kang@samsung.com>
-rw-r--r--idlc/ast/location.hh12
-rw-r--r--idlc/ast/position.hh12
-rw-r--r--idlc/ast/tidlc_l.cpp112
-rw-r--r--idlc/ast/tidlc_y.cpp296
-rw-r--r--idlc/ast/tidlc_y.hpp14
-rw-r--r--idlc/gen/cpp_stub_body_gen.cc46
-rw-r--r--idlc/gen/cpp_stub_body_gen.h6
-rw-r--r--idlc/gen/cpp_stub_body_gen_cb.h97
-rw-r--r--idlc/gen/cpp_stub_header_gen.cc10
-rw-r--r--idlc/gen/cpp_stub_header_gen.h7
-rw-r--r--idlc/gen/cpp_stub_header_gen_cb.h168
-rw-r--r--idlc/main.cc210
-rw-r--r--idlc/options.cc181
-rw-r--r--idlc/options.h76
14 files changed, 803 insertions, 444 deletions
diff --git a/idlc/ast/location.hh b/idlc/ast/location.hh
index 67ad5f2..7971b93 100644
--- a/idlc/ast/location.hh
+++ b/idlc/ast/location.hh
@@ -31,18 +31,18 @@
// version 2.2 of Bison.
/**
- ** \file /home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/location.hh
+ ** \file /home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/location.hh
** Define the yy::location class.
*/
-#ifndef YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_LOCATION_HH_INCLUDED
-# define YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_LOCATION_HH_INCLUDED
+#ifndef YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_LOCATION_HH_INCLUDED
+# define YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_LOCATION_HH_INCLUDED
# include "position.hh"
namespace yy {
-#line 46 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/location.hh" // location.cc:296
+#line 46 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/location.hh" // location.cc:296
/// Abstract a location.
class location
{
@@ -164,5 +164,5 @@ namespace yy {
} // yy
-#line 168 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/location.hh" // location.cc:296
-#endif // !YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_LOCATION_HH_INCLUDED
+#line 168 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/location.hh" // location.cc:296
+#endif // !YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_LOCATION_HH_INCLUDED
diff --git a/idlc/ast/position.hh b/idlc/ast/position.hh
index ff35512..b687a5f 100644
--- a/idlc/ast/position.hh
+++ b/idlc/ast/position.hh
@@ -31,12 +31,12 @@
// version 2.2 of Bison.
/**
- ** \file /home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/position.hh
+ ** \file /home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/position.hh
** Define the yy::position class.
*/
-#ifndef YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_POSITION_HH_INCLUDED
-# define YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_POSITION_HH_INCLUDED
+#ifndef YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_POSITION_HH_INCLUDED
+# define YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_POSITION_HH_INCLUDED
# include <algorithm> // std::max
# include <iostream>
@@ -52,7 +52,7 @@
namespace yy {
-#line 56 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/position.hh" // location.cc:296
+#line 56 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/position.hh" // location.cc:296
/// Abstract a position.
class position
{
@@ -165,5 +165,5 @@ namespace yy {
} // yy
-#line 169 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/position.hh" // location.cc:296
-#endif // !YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_POSITION_HH_INCLUDED
+#line 169 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/position.hh" // location.cc:296
+#endif // !YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_POSITION_HH_INCLUDED
diff --git a/idlc/ast/tidlc_l.cpp b/idlc/ast/tidlc_l.cpp
index debd1f5..585435c 100644
--- a/idlc/ast/tidlc_l.cpp
+++ b/idlc/ast/tidlc_l.cpp
@@ -1,6 +1,6 @@
-#line 2 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_l.cpp"
+#line 2 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_l.cpp"
-#line 4 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_l.cpp"
+#line 4 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_l.cpp"
#define YY_INT_ALIGNED short int
@@ -553,8 +553,8 @@ static yyconst flex_int32_t yy_rule_can_match_eol[47] =
#define yymore() yymore_used_but_not_detected
#define YY_MORE_ADJ 0
#define YY_RESTORE_YY_MORE_OFFSET
-#line 1 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
-#line 2 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 1 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
+#line 2 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
#include <stdio.h>
#include <string>
@@ -572,7 +572,7 @@ static yyconst flex_int32_t yy_rule_can_match_eol[47] =
#define YY_USER_ACTION yylloc->columns(yyleng);
-#line 576 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_l.cpp"
+#line 576 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_l.cpp"
#define INITIAL 0
#define COMMENT 1
@@ -859,14 +859,14 @@ YY_DECL
}
{
-#line 28 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 28 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
std::string comments;
std::string values;
-#line 870 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_l.cpp"
+#line 870 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_l.cpp"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -937,55 +937,55 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
YY_RULE_SETUP
-#line 34 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 34 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; BEGIN(COMMENT); }
YY_BREAK
case 2:
YY_RULE_SETUP
-#line 35 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 35 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; yylloc->step(); BEGIN(INITIAL); }
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 36 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 36 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; comments += "\n"; BEGIN(INITIAL); }
YY_BREAK
case 4:
/* rule 4 can match eol */
YY_RULE_SETUP
-#line 37 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 37 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; yylloc->step(); BEGIN(INITIAL); }
YY_BREAK
case 5:
/* rule 5 can match eol */
YY_RULE_SETUP
-#line 38 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 38 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; yylloc->lines(yyleng); }
YY_BREAK
case 6:
/* rule 6 can match eol */
YY_RULE_SETUP
-#line 39 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 39 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; yylloc->step(); }
YY_BREAK
case YY_STATE_EOF(COMMENT):
-#line 40 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 40 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return 0; }
YY_BREAK
case 7:
/* rule 7 can match eol */
YY_RULE_SETUP
-#line 42 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 42 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ comments += yytext; yylloc->step(); }
YY_BREAK
case 8:
YY_RULE_SETUP
-#line 44 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 44 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ BEGIN(VALUE); }
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 45 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 45 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
BEGIN(INITIAL);
yylval->token = new tidl::Token(values, comments);
@@ -995,54 +995,54 @@ YY_RULE_SETUP
case 10:
/* rule 10 can match eol */
YY_RULE_SETUP
-#line 50 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 50 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ values += yytext; yylloc->step(); }
YY_BREAK
case 11:
/* rule 11 can match eol */
YY_RULE_SETUP
-#line 52 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 52 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ yylloc->lines(yyleng); yylloc->step(); }
YY_BREAK
case 12:
/* rule 12 can match eol */
YY_RULE_SETUP
-#line 54 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 54 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
; // ignore all whitespace
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 55 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 55 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_COMMA; }
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 56 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 56 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_BRACE_OPEN; }
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 57 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 57 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_BRACE_CLOSE; }
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 58 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 58 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_LEFT; }
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 59 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 59 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_RIGHT; }
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 60 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 60 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_SEMICOLON; }
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 61 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 61 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_VOID;
@@ -1050,7 +1050,7 @@ YY_RULE_SETUP
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 65 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 65 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_CHAR;
@@ -1058,7 +1058,7 @@ YY_RULE_SETUP
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 69 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 69 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_SHORT;
@@ -1066,7 +1066,7 @@ YY_RULE_SETUP
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 73 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 73 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_INT;
@@ -1074,7 +1074,7 @@ YY_RULE_SETUP
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 77 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 77 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_LONG;
@@ -1082,7 +1082,7 @@ YY_RULE_SETUP
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 81 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 81 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_FLOAT;
@@ -1090,7 +1090,7 @@ YY_RULE_SETUP
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 85 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 85 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_DOUBLE;
@@ -1098,7 +1098,7 @@ YY_RULE_SETUP
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 89 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 89 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_BUNDLE;
@@ -1106,7 +1106,7 @@ YY_RULE_SETUP
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 93 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 93 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_FILE;
@@ -1114,7 +1114,7 @@ YY_RULE_SETUP
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 97 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 97 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_STRING;
@@ -1122,7 +1122,7 @@ YY_RULE_SETUP
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 101 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 101 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_BOOL;
@@ -1130,42 +1130,42 @@ YY_RULE_SETUP
YY_BREAK
case 30:
YY_RULE_SETUP
-#line 105 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 105 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_IN; }
YY_BREAK
case 31:
YY_RULE_SETUP
-#line 106 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 106 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_OUT; }
YY_BREAK
case 32:
YY_RULE_SETUP
-#line 107 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 107 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_REF; }
YY_BREAK
case 33:
YY_RULE_SETUP
-#line 108 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 108 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_ASYNC; }
YY_BREAK
case 34:
YY_RULE_SETUP
-#line 109 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 109 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_DELEGATE; }
YY_BREAK
case 35:
YY_RULE_SETUP
-#line 110 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 110 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_META_OPEN; }
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 111 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 111 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_META_CLOSE; }
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 112 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 112 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_LIST;
@@ -1173,7 +1173,7 @@ YY_RULE_SETUP
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 116 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 116 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_ARRAY;
@@ -1181,7 +1181,7 @@ YY_RULE_SETUP
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 120 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 120 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_STRUCTURE;
@@ -1189,7 +1189,7 @@ YY_RULE_SETUP
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 124 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 124 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_INTERFACE;
@@ -1197,7 +1197,7 @@ YY_RULE_SETUP
YY_BREAK
case 41:
YY_RULE_SETUP
-#line 128 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 128 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_ID;
@@ -1205,7 +1205,7 @@ YY_RULE_SETUP
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 132 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 132 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ // Square Bracket
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_SB_OPEN;
@@ -1213,7 +1213,7 @@ YY_RULE_SETUP
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 136 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 136 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ // Square Bracket
yylval->token = new tidl::Token(yytext, comments);
return yy::parser::token::T_SB_CLOSE;
@@ -1221,20 +1221,20 @@ YY_RULE_SETUP
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 140 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 140 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_EQUAL; }
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 141 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 141 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
{ return yy::parser::token::T_UNKNOWN; }
YY_BREAK
case 46:
YY_RULE_SETUP
-#line 143 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 143 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
ECHO;
YY_BREAK
-#line 1238 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_l.cpp"
+#line 1238 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_l.cpp"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(VALUE):
yyterminate();
@@ -2439,7 +2439,7 @@ void yyfree (void * ptr , yyscan_t yyscanner)
#define YYTABLES_NAME "yytables"
-#line 143 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.ll"
+#line 143 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.ll"
diff --git a/idlc/ast/tidlc_y.cpp b/idlc/ast/tidlc_y.cpp
index a1c3936..4a686f0 100644
--- a/idlc/ast/tidlc_y.cpp
+++ b/idlc/ast/tidlc_y.cpp
@@ -50,7 +50,7 @@
/* First part of user declarations. */
-#line 1 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:240
+#line 1 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:240
#include <stdio.h>
#include <stdlib.h>
@@ -73,7 +73,7 @@ int yylex(yy::parser::semantic_type *, yy::parser::location_type *, void *);
#define lex_scanner ps->Scanner()
-#line 77 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:240
+#line 77 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:240
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
@@ -105,7 +105,7 @@ static YYLTYPE yyloc_default
;
/* Copy the second part of user declarations. */
-#line 109 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:263
+#line 109 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:263
/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
If N is 0, then set CURRENT to the empty location which ends
the previous symbol: RHS[0] (always defined). */
@@ -127,7 +127,7 @@ static YYLTYPE yyloc_default
#define YYRHSLOC(Rhs, K) ((Rhs)[K].yystate.yyloc)
static void yyerror (const yy::parser::location_type *yylocationp, yy::parser& yyparser, tidl::Parser* ps, const char* msg);
-#line 131 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:263
+#line 131 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:263
#include <stdio.h>
#include <stdlib.h>
@@ -1088,25 +1088,25 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
switch (yyn)
{
case 2:
-#line 96 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 96 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->SetDoc((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.doc));
}
-#line 1096 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1096 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 3:
-#line 101 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 101 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).doc) = new tidl::Document();
if ((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.blk) != NULL)
((*yyvalp).doc)->AddBlock((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.blk));
}
-#line 1106 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1106 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 4:
-#line 106 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 106 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).doc) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.doc);
@@ -1119,80 +1119,80 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
}
}
}
-#line 1123 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1123 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 5:
-#line 120 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 120 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).blk) = (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.interf);
}
-#line 1131 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1131 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 6:
-#line 123 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 123 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).blk) = (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.structure);
}
-#line 1139 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1139 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 7:
-#line 128 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 128 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).structure) = new tidl::Structure((((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.elms), (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token)->GetComments(),
(((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token);
}
-#line 1150 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1150 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 8:
-#line 134 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 134 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line);
((*yyvalp).structure) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token);
}
-#line 1160 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1160 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 9:
-#line 139 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 139 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"Please check it before an open brace.\"",
(((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line);
((*yyvalp).structure) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
}
-#line 1171 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1171 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 10:
-#line 145 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 145 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in structure declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).structure) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token);
}
-#line 1181 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1181 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 11:
-#line 152 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 152 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).elms) = new (std::nothrow) tidl::Elements();
if (((*yyvalp).elms) != nullptr) {
((*yyvalp).elms)->Add((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.elm));
}
}
-#line 1192 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1192 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 12:
-#line 158 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 158 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).elms) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.elms);
if ((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.elm) != nullptr) {
@@ -1204,68 +1204,68 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
}
}
}
-#line 1208 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1208 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 13:
-#line 169 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 169 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in elements declarations.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yyloc).begin.line);
((*yyvalp).elms) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.elms);
}
-#line 1217 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1217 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 14:
-#line 175 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 175 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).elm) = new tidl::Element((((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.b_type), (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.b_type)->GetComments(),
(((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yyloc).begin.line);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.token);
}
-#line 1227 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1227 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 15:
-#line 180 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 180 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
((*yyvalp).elm) = NULL;
}
-#line 1236 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1236 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 16:
-#line 184 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 184 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in element declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).elm) = NULL;
}
-#line 1245 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1245 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 17:
-#line 188 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 188 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in element declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
((*yyvalp).elm) = NULL;
}
-#line 1254 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1254 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 18:
-#line 194 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 194 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).attrs) = new (std::nothrow) tidl::Attributes();
if (((*yyvalp).attrs) != nullptr) {
((*yyvalp).attrs)->Add((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.attr));
}
}
-#line 1265 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1265 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 19:
-#line 200 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 200 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).attrs) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.attrs);
if ((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.attr) != nullptr) {
@@ -1277,62 +1277,62 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
}
}
}
-#line 1281 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1281 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 20:
-#line 211 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 211 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in attributes", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
((*yyvalp).attrs) = new tidl::Attributes();
}
-#line 1290 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1290 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 21:
-#line 217 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 217 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).attr) = new tidl::Attribute((((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yyloc).begin.line);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1300 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1300 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 22:
-#line 222 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 222 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in attribute declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).attr) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1311 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1311 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 23:
-#line 228 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 228 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in attribute declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
((*yyvalp).attr) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token);
}
-#line 1321 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1321 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 24:
-#line 235 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 235 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).interf) = new tidl::Interface((((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.decls), (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token)->GetComments(),
new tidl::Attributes(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token);
}
-#line 1332 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1332 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 25:
-#line 241 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 241 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).interf) = new tidl::Interface((((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.decls), (((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval.token)->GetComments(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.attrs),
(((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yyloc).begin.line);
@@ -1341,52 +1341,52 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token);
}
-#line 1345 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1345 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 26:
-#line 249 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 249 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line);
((*yyvalp).interf) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token);
}
-#line 1355 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1355 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 27:
-#line 254 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 254 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in interface declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line);
((*yyvalp).interf) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
}
-#line 1365 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1365 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 28:
-#line 259 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 259 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in interface declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).interf) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.token);
}
-#line 1375 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1375 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 29:
-#line 266 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 266 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).decls) = new (std::nothrow) tidl::Declarations();
if (((*yyvalp).decls) != nullptr) {
((*yyvalp).decls)->Add((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.decl));
}
}
-#line 1386 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1386 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 30:
-#line 272 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 272 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).decls) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.decls);
if ((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.decl) != nullptr) {
@@ -1398,30 +1398,30 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
}
}
}
-#line 1402 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1402 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 31:
-#line 283 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 283 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in methods declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).decls) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.decls);
}
-#line 1411 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1411 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 32:
-#line 289 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 289 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).decl) = new tidl::Declaration((((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.b_type), (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.params), (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.b_type)->GetComments(),
(((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yyloc).begin.line, tidl::Declaration::MethodType::SYNC);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
}
-#line 1421 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1421 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 33:
-#line 294 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 294 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).decl) = new tidl::Declaration((((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token)->ToString(),
new tidl::BaseType("void", (((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token)->GetComments()), (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.params),
@@ -1429,11 +1429,11 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token);
}
-#line 1433 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1433 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 34:
-#line 301 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 301 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).decl) = new tidl::Declaration((((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token)->ToString(),
new tidl::BaseType("void", (((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token)->GetComments()), (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.params),
@@ -1442,97 +1442,97 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval.token);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token);
}
-#line 1446 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1446 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 35:
-#line 309 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 309 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in method declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token);
}
-#line 1456 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1456 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 36:
-#line 314 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 314 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in method declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval.token);
}
-#line 1466 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1466 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 37:
-#line 319 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 319 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No async\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.token);
}
-#line 1476 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1476 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 38:
-#line 324 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 324 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
}
-#line 1485 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1485 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 39:
-#line 328 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 328 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
}
-#line 1494 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1494 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 40:
-#line 332 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 332 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
}
-#line 1503 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1503 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 41:
-#line 336 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 336 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in method declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
}
-#line 1512 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1512 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 42:
-#line 340 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 340 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in method declaration.", (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
((*yyvalp).decl) = NULL;
}
-#line 1521 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1521 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 43:
-#line 346 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 346 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).params) = new tidl::Parameters();
if ((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.param) != nullptr) {
((*yyvalp).params)->Add((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.param));
}
}
-#line 1532 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1532 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 44:
-#line 352 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 352 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).params) = (((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval.params);
if ((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.param) != nullptr) {
@@ -1544,95 +1544,95 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
}
}
}
-#line 1548 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1548 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 45:
-#line 363 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 363 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
ps->ReportError("syntax error in parameter list", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
((*yyvalp).params) = new tidl::Parameters();
}
-#line 1557 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1557 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 46:
-#line 369 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 369 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).direction) = new tidl::Token("in", "");
}
-#line 1565 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1565 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 47:
-#line 372 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 372 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).direction) = new tidl::Token("out", "");
}
-#line 1573 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1573 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 48:
-#line 375 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 375 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).direction) = new tidl::Token("ref", "");
}
-#line 1581 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1581 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 49:
-#line 380 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 380 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).param) = nullptr;
}
-#line 1589 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1589 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 50:
-#line 383 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 383 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).param) = nullptr;
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1598 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1598 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 51:
-#line 387 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 387 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).param) = new tidl::Parameter((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.p_type), (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yyloc).begin.line);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1607 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1607 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 52:
-#line 393 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 393 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).p_type) = new tidl::ParameterType((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type));
}
-#line 1615 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1615 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 53:
-#line 396 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 396 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).p_type) = new tidl::ParameterType((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type), (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.direction)->ToString());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.direction);
}
-#line 1624 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1624 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 54:
-#line 402 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 402 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type);
}
-#line 1632 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1632 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 55:
-#line 405 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 405 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
if (!ps->IsBetaEnabled()) {
ps->ReportError("syntax error. \"No identifier\".", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yyloc).begin.line);
@@ -1643,146 +1643,146 @@ yyuserAction (yyRuleNum yyn, size_t yyrhslen, yyGLRStackItem* yyvsp,
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
}
-#line 1647 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1647 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 56:
-#line 417 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 417 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.b_type);
}
-#line 1655 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1655 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 57:
-#line 420 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 420 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("void", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1664 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1664 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 58:
-#line 424 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 424 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("char", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1673 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1673 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 59:
-#line 428 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 428 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("short", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1682 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1682 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 60:
-#line 432 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 432 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("int", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1691 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1691 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 61:
-#line 436 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 436 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("long", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1700 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1700 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 62:
-#line 440 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 440 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("float", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1709 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1709 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 63:
-#line 444 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 444 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("double", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1718 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1718 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 64:
-#line 448 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 448 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("bundle", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1727 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1727 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 65:
-#line 452 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 452 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("string", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1736 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1736 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 66:
-#line 456 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 456 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType("bool", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1745 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1745 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 67:
-#line 460 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 460 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType((((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments(), true);
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1754 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1754 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 68:
-#line 466 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 466 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).b_type) = new tidl::BaseType((((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->ToString(), (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token)->GetComments());
((*yyvalp).b_type)->SetMetaType((((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.b_type));
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval.token);
}
-#line 1764 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1764 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 69:
-#line 473 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 473 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).token) = new tidl::Token("list", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1773 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1773 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
case 70:
-#line 477 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
+#line 477 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:816
{
((*yyvalp).token) = new tidl::Token("array", (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token)->GetComments());
delete (((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval.token);
}
-#line 1782 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1782 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
break;
-#line 1786 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
+#line 1786 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:816
default: break;
}
@@ -3257,7 +3257,7 @@ yyparse (yy::parser& yyparser, tidl::Parser* ps)
/* User initialization code. */
yylloc.initialize ();
-#line 3261 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2270
+#line 3261 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2270
if (! yyinitGLRStack (yystackp, YYINITDEPTH))
goto yyexhaustedlab;
@@ -3558,7 +3558,7 @@ yypdumpstack (yyGLRStack* yystackp)
-#line 483 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.c:2584
+#line 483 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.c:2584
#include <ctype.h>
@@ -3570,7 +3570,7 @@ void yy::parser::error(const yy::parser::location_type& l,
}
-#line 3574 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2584
+#line 3574 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2584
/*------------------.
| Report an error. |
@@ -3587,7 +3587,7 @@ yyerror (const yy::parser::location_type *yylocationp, yy::parser& yyparser, tid
namespace yy {
-#line 3591 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2584
+#line 3591 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2584
/// Build a parser object.
parser::parser (tidl::Parser* ps_yyarg)
:
@@ -3668,4 +3668,4 @@ namespace yy {
#endif
} // yy
-#line 3672 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2584
+#line 3672 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.cpp" // glr.c:2584
diff --git a/idlc/ast/tidlc_y.hpp b/idlc/ast/tidlc_y.hpp
index e903a9a..a6fc076 100644
--- a/idlc/ast/tidlc_y.hpp
+++ b/idlc/ast/tidlc_y.hpp
@@ -32,8 +32,8 @@
// C++ GLR parser skeleton written by Akim Demaille.
-#ifndef YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED
-# define YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED
+#ifndef YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED
+# define YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED
#include <stdexcept>
@@ -48,7 +48,7 @@
namespace yy {
-#line 52 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.hpp" // glr.cc:329
+#line 52 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.hpp" // glr.cc:329
/// A Bison parser.
@@ -59,7 +59,7 @@ namespace yy {
/// Symbol semantic values.
union semantic_type
{
- #line 37 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc.yy" // glr.cc:329
+ #line 37 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc.yy" // glr.cc:329
tidl::Document* doc;
tidl::Interface* interf;
@@ -78,7 +78,7 @@ namespace yy {
tidl::Attribute* attr;
tidl::Attributes* attrs;
-#line 82 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.hpp" // glr.cc:329
+#line 82 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.hpp" // glr.cc:329
};
#else
typedef YYSTYPE semantic_type;
@@ -299,7 +299,7 @@ namespace yy {
} // yy
-#line 303 "/home/hyunho/full-sources/tizen/tidl_private_sharing_proj/tidl/idlc/ast/tidlc_y.hpp" // glr.cc:329
+#line 303 "/home/hyunho/full-sources/tizen/tidl_thread_proj/tidl/idlc/ast/tidlc_y.hpp" // glr.cc:329
-#endif // !YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_PRIVATE_SHARING_PROJ_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED
+#endif // !YY_YY_HOME_HYUNHO_FULL_SOURCES_TIZEN_TIDL_THREAD_PROJ_TIDL_IDLC_AST_TIDLC_Y_HPP_INCLUDED
diff --git a/idlc/gen/cpp_stub_body_gen.cc b/idlc/gen/cpp_stub_body_gen.cc
index 8235950..e39d3e9 100644
--- a/idlc/gen/cpp_stub_body_gen.cc
+++ b/idlc/gen/cpp_stub_body_gen.cc
@@ -22,8 +22,9 @@ namespace {
namespace tidl {
-CppStubBodyGen::CppStubBodyGen(std::shared_ptr<Document> doc)
- : CppGeneratorBase(doc) {}
+CppStubBodyGen::CppStubBodyGen(std::shared_ptr<Document> doc,
+ std::shared_ptr<Options> options)
+ : CppGeneratorBase(doc), options_(options) {}
void CppStubBodyGen::OnInitGen(std::ofstream& stream) {
std::string key(".cc");
@@ -118,18 +119,29 @@ void CppStubBodyGen::GenConstructor(std::ofstream& stream,
void CppStubBodyGen::GenDefaultMethods(std::ofstream& stream,
const Interface& iface) {
GenConstructor(stream, iface);
+ if (options_->IsThreadEnabled())
+ stream << ReplaceAll(CB_DEFAULT_THREAD_METHODS, "##", iface.GetID());
+
stream << ReplaceAll(CB_DEFAULT_METHODS, "##", iface.GetID());
}
void CppStubBodyGen::GenReceivedEvent(std::ofstream& stream,
const Interface& iface) {
- GenTemplate(CB_ON_RECEIVED_CB_FRONT, stream,
- [&]()->std::string {
- return iface.GetID();
- },
- [&]()->std::string {
- return iface.GetID();
- });
+ if (options_->IsThreadEnabled()) {
+ GenTemplate(CB_RUN_PENDING_JOB_FRONT, stream,
+ [&]()->std::string {
+ return iface.GetID();
+ });
+ } else {
+ GenTemplate(CB_ON_RECEIVED_CB_FRONT, stream,
+ [&]()->std::string {
+ return iface.GetID();
+ },
+ [&]()->std::string {
+ return iface.GetID();
+ });
+ }
+
for (auto& i : iface.GetDeclarations().GetDecls()) {
if (i->GetMethodType() == Declaration::MethodType::DELEGATE)
continue;
@@ -141,7 +153,20 @@ void CppStubBodyGen::GenReceivedEvent(std::ofstream& stream,
}, false);
stream << NLine(1);
}
- stream << CB_ON_RECEIVED_CB_BACK << NLine(1);
+
+ if (options_->IsThreadEnabled()) {
+ stream << CB_RUN_PENDING_JOB_BACK << NLine(1);
+
+ GenTemplate(CB_ON_RECEIVED_CB, stream,
+ [&]()->std::string {
+ return iface.GetID();
+ },
+ [&]()->std::string {
+ return iface.GetID();
+ });
+ } else {
+ stream << CB_ON_RECEIVED_CB_BACK << NLine(1);
+ }
}
void CppStubBodyGen::GenInvocation(std::ofstream& stream,
@@ -221,6 +246,7 @@ void CppStubBodyGen::GenInvocation(std::ofstream& stream,
}
m += "ret = rpc_port_parcel_send(result, port);\n";
+ m += "_I(\"Parcel send result(%d)\", ret);\n";
stream << AddIndent(TAB_SIZE * 3, m);
}
diff --git a/idlc/gen/cpp_stub_body_gen.h b/idlc/gen/cpp_stub_body_gen.h
index 7db4dec..a21aebd 100644
--- a/idlc/gen/cpp_stub_body_gen.h
+++ b/idlc/gen/cpp_stub_body_gen.h
@@ -21,12 +21,13 @@
#include <string>
#include "idlc/gen/cpp_gen_base.h"
+#include "idlc/options.h"
namespace tidl {
class CppStubBodyGen : public CppGeneratorBase {
public:
- explicit CppStubBodyGen(std::shared_ptr<Document> doc);
+ explicit CppStubBodyGen(std::shared_ptr<Document> doc, std::shared_ptr<Options> options);
virtual ~CppStubBodyGen() = default;
void OnInitGen(std::ofstream& stream) override;
@@ -41,6 +42,9 @@ class CppStubBodyGen : public CppGeneratorBase {
void GenReceivedEvent(std::ofstream& stream, const Interface& iface);
void GenInvocation(std::ofstream& stream, const Declaration& decl);
void GenConstructor(std::ofstream& stream, const Interface& iface);
+
+ private:
+ std::shared_ptr<Options> options_;
};
} // namespace tidl
diff --git a/idlc/gen/cpp_stub_body_gen_cb.h b/idlc/gen/cpp_stub_body_gen_cb.h
index d3fad11..709ea4d 100644
--- a/idlc/gen/cpp_stub_body_gen_cb.h
+++ b/idlc/gen/cpp_stub_body_gen_cb.h
@@ -73,6 +73,32 @@ void ##::OnDisconnectedCB(const char* sender, const char* instance, void *data)
}
}
}
+
+)__cpp_cb";
+
+const char CB_DEFAULT_THREAD_METHODS[] =
+R"__cpp_cb(
+void ##::ServiceBase::Dispatch(rpc_port_h port,
+ rpc_port_h callback_port,
+ rpc_port_parcel_h parcel,
+ std::shared_ptr<ServiceBase> service) {
+ active_object_->Send(
+ std::shared_ptr<Job>(
+ new (std::nothrow) PendingJob(
+ port, callback_port, parcel, service)));
+}
+
+##::PendingJob::PendingJob(rpc_port_h port,
+ rpc_port_h callback_port,
+ rpc_port_parcel_h parcel,
+ std::shared_ptr<ServiceBase> service)
+ : Job(this),
+ port_(port),
+ callback_port_(callback_port),
+ parcel_(parcel),
+ service_(std::move(service)) {
+}
+
)__cpp_cb";
const char CB_ON_RECEIVED_CB_FRONT[] =
@@ -132,8 +158,77 @@ R"__cpp_cb( default:
}
)__cpp_cb";
+
+const char CB_RUN_PENDING_JOB_FRONT[] =
+R"__cpp_cb(
+void $$::PendingJob::Run() {
+ rpc_port_parcel_h result;
+ int cmd;
+ int ret;
+ rpc_port_parcel_h p = parcel_;
+ std::shared_ptr<ServiceBase> b = service_;
+ rpc_port_h port = port_;
+
+ rpc_port_parcel_create(&result);
+ rpc_port_parcel_read_int32(parcel_, &cmd);
+
+ switch (cmd) {
+)__cpp_cb";
+
+const char CB_RUN_PENDING_JOB_BACK[] =
+R"__cpp_cb( default:
+ _E("Unknown command(%d)", cmd);
+ rpc_port_parcel_destroy(parcel_);
+ rpc_port_parcel_destroy(result);
+ return;
+ }
+
+ rpc_port_parcel_destroy(parcel_);
+ rpc_port_parcel_destroy(result);
+}
+)__cpp_cb";
+
+const char CB_ON_RECEIVED_CB[] =
+R"__cpp_cb(
+int $$::OnReceivedCB(const char* sender, const char* instance, rpc_port_h port, void *data)
+{
+ auto* cxt = static_cast<$$*>(data);
+ std::shared_ptr<ServiceBase> b;
+ rpc_port_parcel_h parcel;
+ rpc_port_h callback_port;
+
+ for (auto& i : cxt->services_) {
+ if (i->GetInstance() == instance) {
+ b = i;
+ break;
+ }
+ }
+
+ if (b.get() == nullptr) {
+ _E("Failed to find $$ context(%s)", instance);
+ return -1;
+ }
+
+ int ret = rpc_port_stub_get_port(cxt->stub_, RPC_PORT_PORT_CALLBACK, instance,
+ &callback_port);
+ if (ret != 0) {
+ _E("Failed to get callback port");
+ }
+
+ ret = rpc_port_parcel_create_from_port(&parcel, port);
+ if (ret != 0) {
+ _E("Failed to create parcel from port");
+ return ret;
+ }
+ b->Dispatch(port, callback_port, parcel, b);
+
+ return ret;
+}
+)__cpp_cb";
+
const char CB_CTOR_SERVICE_BASE[] =
R"__cpp_cb($$::ServiceBase::ServiceBase(std::string sender, std::string instance)
- : sender_(std::move(sender)), instance_(std::move(instance)) {})__cpp_cb";
+ : sender_(std::move(sender)), instance_(std::move(instance)),
+ active_object_(new ActiveObject()) {})__cpp_cb";
#endif // IDLC_CPP_GEN_CPP_STUB_BODY_GEN_CB_H_
diff --git a/idlc/gen/cpp_stub_header_gen.cc b/idlc/gen/cpp_stub_header_gen.cc
index 0e5689e..3e6e78f 100644
--- a/idlc/gen/cpp_stub_header_gen.cc
+++ b/idlc/gen/cpp_stub_header_gen.cc
@@ -22,8 +22,9 @@ namespace {
namespace tidl {
-CppStubHeaderGen::CppStubHeaderGen(std::shared_ptr<Document> doc)
- : CppGeneratorBase(doc) {}
+CppStubHeaderGen::CppStubHeaderGen(std::shared_ptr<Document> doc,
+ std::shared_ptr<Options> options)
+ : CppGeneratorBase(doc), options_(options) {}
void CppStubHeaderGen::OnInitGen(std::ofstream& stream) {
GenVersion(stream);
@@ -44,6 +45,9 @@ void CppStubHeaderGen::GenNamespace(std::ofstream& stream) {
stream << "namespace stub ";
GenBrace(stream, 0, [&]() {
GenExceptions(stream);
+ stream << CB_JOB;
+ stream << CB_SHARED_QUEUE;
+ stream << CB_ACTIVE_OBJECT;
GenInterfaces(stream);
}, false, false);
stream << " // namespace stub" + NLine(1);
@@ -81,6 +85,8 @@ void CppStubHeaderGen::GenPublic(std::ofstream& stream,
stream << " public:" << NLine(1);
stream << " class ServiceBase;" << NLine(1);
GenHeaderCallbacks(stream, iface, false);
+ if (options_->IsThreadEnabled())
+ stream << CB_PENDING_JOB << NLine(1);
GenServiceBase(stream, iface);
GenPublicMethods(stream, iface);
}
diff --git a/idlc/gen/cpp_stub_header_gen.h b/idlc/gen/cpp_stub_header_gen.h
index db8d82b..4bcd243 100644
--- a/idlc/gen/cpp_stub_header_gen.h
+++ b/idlc/gen/cpp_stub_header_gen.h
@@ -21,12 +21,14 @@
#include <string>
#include "idlc/gen/cpp_gen_base.h"
+#include "idlc/options.h"
namespace tidl {
class CppStubHeaderGen : public CppGeneratorBase {
public:
- explicit CppStubHeaderGen(std::shared_ptr<Document> doc);
+ explicit CppStubHeaderGen(std::shared_ptr<Document> doc,
+ std::shared_ptr<Options> options);
virtual ~CppStubHeaderGen() = default;
void OnInitGen(std::ofstream& stream) override;
@@ -41,6 +43,9 @@ class CppStubHeaderGen : public CppGeneratorBase {
void GenPrivate(std::ofstream& stream, const Interface& iface);
void GenServiceBase(std::ofstream& stream, const Interface& iface);
void GenPublicMethods(std::ofstream& stream, const Interface& iface);
+
+ private:
+ std::shared_ptr<Options> options_;
};
} // namespace tidl
diff --git a/idlc/gen/cpp_stub_header_gen_cb.h b/idlc/gen/cpp_stub_header_gen_cb.h
index 8cb4c1f..b4db8a5 100644
--- a/idlc/gen/cpp_stub_header_gen_cb.h
+++ b/idlc/gen/cpp_stub_header_gen_cb.h
@@ -76,6 +76,27 @@ R"__cpp_cb(
/// </summary>
virtual void OnTerminate() = 0;
+ void Dispatch(rpc_port_h port, rpc_port_h callback_port,
+ rpc_port_parcel_h parcel, std::shared_ptr<ServiceBase> service);
+
+)__cpp_cb";
+
+const char CB_PENDING_JOB[] =
+R"__cpp_cb(
+ class PendingJob : public Job, Job::IEvent {
+ public:
+ PendingJob(rpc_port_h port, rpc_port_h callback_port,
+ rpc_port_parcel_h parcel, std::shared_ptr<ServiceBase> service_);
+
+ private:
+ void Run() override;
+
+ private:
+ rpc_port_h port_;
+ rpc_port_h callback_port_;
+ rpc_port_parcel_h parcel_;
+ std::shared_ptr<ServiceBase> service_;
+ };
)__cpp_cb";
const char CB_SERVICE_BASE_BACK[] =
@@ -86,6 +107,7 @@ R"__cpp_cb(
private:
std::string sender_;
std::string instance_;
+ std::unique_ptr<ActiveObject> active_object_;
};)__cpp_cb";
const char CB_PUBLIC_METHODS[] =
@@ -111,6 +133,148 @@ R"__cpp_cb( ##();
)__cpp_cb";
+
+const char CB_JOB[] = R"__cls_job(class Job {
+ public:
+ class IEvent {
+ public:
+ virtual void Run() = 0;
+ };
+
+ Job() : handler_(nullptr) {
+ }
+
+ Job(IEvent* handler) : handler_(handler) {
+ }
+ virtual ~Job() = default;
+
+ Job(const Job& job) {
+ handler_ = job.handler_;
+ }
+
+ Job& operator = (const Job& job) {
+ if (this != &job)
+ handler_ = job.handler_;
+ return *this;
+ }
+ Job(Job&& job) noexcept {
+ handler_ = job.handler_;
+ job.handler_ = nullptr;
+ }
+
+ Job& operator = (Job&& job) noexcept {
+ if (this != &job) {
+ handler_ = job.handler_;
+ job.handler_ = nullptr;
+ }
+ return *this;
+ }
+
+ void Invoke() {
+ if (handler_)
+ handler_->Run();
+ }
+
+ private:
+ IEvent* handler_;
+};
+
+)__cls_job";
+
+const char CB_SHARED_QUEUE[] = R"__cls_shared_que(
+template <class T>
+class SharedQueue {
+ public:
+ SharedQueue() = default;
+ virtual ~SharedQueue() = default;
+
+ void Push(T item) {
+ std::lock_guard<std::mutex> lock(mutex_);
+ queue_.push_back(item);
+ cond_var_.notify_one();
+ }
+
+ void PushFront(T item) {
+ std::lock_guard<std::mutex> lock(mutex_);
+ queue_.push_front(item);
+ cond_var_.notify_one();
+ }
+
+ bool TryAndPop(T& item) {
+ std::lock_guard<std::mutex> lock(mutex_);
+ if (queue_.empty())
+ return false;
+
+ item = queue_.front();
+ queue_.pop_front();
+
+ return true;
+ }
+
+ void WaitAndPop(T& item) {
+ std::unique_lock<std::mutex> lock(mutex_);
+ while (queue_.empty())
+ cond_var_.wait(lock);
+
+ item = queue_.front();
+ queue_.pop_front();
+ }
+
+ bool Empty() {
+ std::lock_guard<std::mutex> lock(mutex_);
+ return queue_.empty();
+ }
+
+ int Size() {
+ std::lock_guard<std::mutex> lock(mutex_);
+ return queue_.size();
+ }
+
+ private:
+ std::deque<T> queue_;
+ mutable std::mutex mutex_;
+ std::condition_variable cond_var_;
+};
+
+)__cls_shared_que";
+
+const char CB_ACTIVE_OBJECT[] = R"__cls_active_obj(class ActiveObject : public Job::IEvent {
+ public:
+ ActiveObject() {
+ thread_ = std::thread([&]{
+ do {
+ std::shared_ptr<Job> item;
+ queue_.WaitAndPop(item);
+ item->Invoke();
+ } while (!done_);
+ });
+ }
+ virtual ~ActiveObject() {
+ Quit();
+ thread_.join();
+ }
+
+ public:
+ void Send(std::shared_ptr<Job> job) {
+ queue_.Push(std::move(job));
+ }
+
+ private:
+ void Quit() {
+ Send(std::shared_ptr<Job>(new (std::nothrow) Job(this)));
+ }
+ void Run() override {
+ done_ = true;
+ }
+
+ private:
+ std::thread thread_;
+ bool done_ = false;
+ SharedQueue<std::shared_ptr<Job>> queue_;
+};
+
+)__cls_active_obj";
+
const char CB_HEADER[] =
R"__cpp_cb(
#pragma once
@@ -124,6 +288,10 @@ R"__cpp_cb(
#include <vector>
#include <list>
#include <atomic>
+#include <condition_variable>
+#include <mutex>
+#include <deque>
+#include <thread>
)__cpp_cb";
diff --git a/idlc/main.cc b/idlc/main.cc
index 13140e4..22faf9c 100644
--- a/idlc/main.cc
+++ b/idlc/main.cc
@@ -14,7 +14,6 @@
* limitations under the License.
*/
-#include <getopt.h>
#include <iostream>
#include <cstring>
@@ -32,211 +31,10 @@
#include "idlc/gen/cpp_proxy_body_gen.h"
#include "idlc/gen/cpp_stub_header_gen.h"
#include "idlc/gen/cpp_stub_body_gen.h"
-
-namespace {
-
-class Options {
- public:
- Options();
- ~Options() = default;
-
- static std::unique_ptr<Options> Parse(int argc, char** argv);
- bool IsProxy() const { return isProxy_; }
- bool IsBetaEnabled() const { return isBetaEnabled_; }
- std::string GetLanguage() const { return language_; }
- std::string GetInput() const { return input_; }
- std::string GetOutput() const { return output_; }
- bool HasNamespace() const { return hasNamespace_; }
- bool HasRpcPortLib() const { return hasRpcPortLib_; }
-
- private:
- enum Cmd {
- CMD_PROXY,
- CMD_STUB,
- CMD_VERSION,
- CMD_HELP,
- CMD_MAX
- };
-
- enum Opt {
- OPT_LANGUAGE,
- OPT_INPUT,
- OPT_OUTPUT,
- OPT_NAMESPACE,
- OPT_RPCLIB,
- OPT_MAX
- };
-
- void PrintUsage();
- void PrintVersion();
- void PrintSample();
-
- private:
- bool isProxy_;
- std::string language_;
- std::string input_;
- std::string output_;
- std::string help_;
- bool hasNamespace_ = false;
- bool hasRpcPortLib_ = false;
- bool isBetaEnabled_ = false;
-};
-
-Options::Options() {
- help_ = R"__option_cb(
-Usage:
- tidlc [OPTION...]
-
-Help Options:
- -h, --help Show help options
-
-Additional Options:
- -l, --language=LANGUAGE Select generating language (C, C++, C#).
- -i, --input=INPUT A tidl interface file.
- -o, --output=OUTPUT The generated interface file.
- -n, --namespace Add the prefix in the funtion name as output file name (C language only).
- -r, --rpclib Generate C# library for rpc-port (C# language only).
-
-Application Options:
- -p, --proxy Generate proxy code
- -s, --stub Generate stub code
- -v, --version Show version information
-)__option_cb";
-}
-
-void Options::PrintUsage() {
- std::cerr << help_ << std::endl;
-}
-
-void Options::PrintVersion() {
- std::cerr << "tidlc " << FULLVER << std::endl;
-}
-
-void Options::PrintSample() {
- std::cerr << "tidlc -p -l C++ -i test.tidl -o CppTestProxy " << std::endl;
-}
-
-std::unique_ptr<Options> Options::Parse(int argc, char** argv) {
- int cmd[CMD_MAX] = { 0, };
- int opt[OPT_MAX] = { 0, };
- auto options = std::unique_ptr<Options>(new Options());
- int option_index = 0;
-
- struct option long_options[] = {
- {"proxy", no_argument, NULL, 'p'},
- {"stub", no_argument, NULL, 's'},
- {"version", no_argument, NULL, 'v'},
- {"help", no_argument, NULL, 'h'},
- {"language", required_argument, NULL, 'l'},
- {"input", required_argument, NULL, 'i'},
- {"output", required_argument, NULL, 'o'},
- {"namespace", no_argument, NULL, 'n'},
- {"rpclib", no_argument, NULL, 'r'},
- {"beta", no_argument, NULL, 'b'},
- {0, 0, 0, 0}
- };
-
- while (true) {
- int c = getopt_long(argc, argv, "bpsvhl:i:o:nr", long_options,
- &option_index);
- if (c == -1)
- break;
-
- switch (c) {
- case 0:
- break;
-
- case 'p':
- cmd[CMD_PROXY] = 1;
- break;
-
- case 's':
- cmd[CMD_STUB] = 1;
- break;
-
- case 'v':
- cmd[CMD_VERSION] = 1;
- break;
-
- case 'h':
- cmd[CMD_HELP] = 1;
- break;
-
- case 'n':
- opt[OPT_NAMESPACE] = 1;
- break;
-
- case 'r':
- opt[OPT_RPCLIB] = 1;
- break;
-
- case 'l':
- opt[OPT_LANGUAGE] = 1;
- options->language_ = optarg;
- break;
-
- case 'i':
- opt[OPT_INPUT] = 1;
- options->input_ = optarg;
- break;
-
- case 'o':
- opt[OPT_OUTPUT] = 1;
- options->output_ = optarg;
- break;
-
- case 'b':
- options->isBetaEnabled_ = true;
- break;
-
- default:
- cmd[CMD_HELP] = 1;
- }
- }
-
- if (cmd[CMD_VERSION]) {
- options->PrintVersion();
- return std::unique_ptr<Options>(nullptr);
- }
-
- if (cmd[CMD_HELP]) {
- options->PrintUsage();
- return std::unique_ptr<Options>(nullptr);
- } else if (!cmd[CMD_PROXY] && !cmd[CMD_STUB]) {
- std::cerr << "Stub or proxy must be specified." << std::endl;
- options->PrintSample();
- return std::unique_ptr<Options>(nullptr);
- } else if (!opt[OPT_LANGUAGE]) {
- std::cerr << "Select a language (C, C++, C#).." << std::endl;
- options->PrintSample();
- return std::unique_ptr<Options>(nullptr);
- } else if (!opt[OPT_INPUT]) {
- std::cerr << "No input file." << std::endl;
- options->PrintSample();
- return std::unique_ptr<Options>(nullptr);
- } else if (opt[OPT_INPUT]) {
- std::ifstream in_file(options->input_.c_str());
- if (!in_file.good()) {
- std::cerr << "Not exist input file." << std::endl;
- return std::unique_ptr<Options>(nullptr);
- }
- } else if (!opt[OPT_OUTPUT]) {
- std::cerr << "No out file." << std::endl;
- options->PrintSample();
- return std::unique_ptr<Options>(nullptr);
- }
-
- options->isProxy_ = cmd[CMD_PROXY] ? true : false;
- options->hasNamespace_ = opt[OPT_NAMESPACE] ? true : false;
- options->hasRpcPortLib_ = opt[OPT_RPCLIB] ? true : false;
-
- return options;
-}
-
-} // namespace
+#include "idlc/options.h"
int main(int argc, char** argv) {
- std::unique_ptr<::Options> options = ::Options::Parse(argc, argv);
+ std::shared_ptr<tidl::Options> options = tidl::Options::Parse(argc, argv);
if (!options)
exit(1);
@@ -276,9 +74,9 @@ int main(int argc, char** argv) {
lib.Run("rpc-port.cs");
}
} else if (options->GetLanguage() == "C++") {
- tidl::CppStubHeaderGen stub_header(ps.GetDoc());
+ tidl::CppStubHeaderGen stub_header(ps.GetDoc(), options);
stub_header.Run(options->GetOutput() + ".h");
- tidl::CppStubBodyGen stub_body(ps.GetDoc());
+ tidl::CppStubBodyGen stub_body(ps.GetDoc(), options);
stub_body.Run(options->GetOutput() + ".cc");
} else if (options->GetLanguage() == "C") {
tidl::CStubHeaderGen stub_header(ps.GetDoc());
diff --git a/idlc/options.cc b/idlc/options.cc
new file mode 100644
index 0000000..c19cd5a
--- /dev/null
+++ b/idlc/options.cc
@@ -0,0 +1,181 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <getopt.h>
+
+#include <fstream>
+
+#include "idlc/options.h"
+
+namespace tidl {
+
+Options::Options() {
+ help_ = R"__option_cb(
+Usage:
+ tidlc [OPTION...]
+
+Help Options:
+ -h, --help Show help options
+
+Additional Options:
+ -l, --language=LANGUAGE Select generating language (C, C++, C#).
+ -i, --input=INPUT A tidl interface file.
+ -o, --output=OUTPUT The generated interface file.
+ -n, --namespace Add the prefix in the funtion name as output file name (C language only).
+ -r, --rpclib Generate C# library for rpc-port (C# language only).
+
+Application Options:
+ -p, --proxy Generate proxy code
+ -s, --stub Generate stub code
+ -v, --version Show version information
+)__option_cb";
+}
+
+void Options::PrintUsage() {
+ std::cerr << help_ << std::endl;
+}
+
+void Options::PrintVersion() {
+ std::cerr << "tidlc " << FULLVER << std::endl;
+}
+
+void Options::PrintSample() {
+ std::cerr << "tidlc -p -l C++ -i test.tidl -o CppTestProxy " << std::endl;
+}
+
+std::shared_ptr<Options> Options::Parse(int argc, char** argv) {
+ int cmd[CMD_MAX] = { 0, };
+ int opt[OPT_MAX] = { 0, };
+ auto options = std::shared_ptr<Options>(new Options());
+ int option_index = 0;
+
+ struct option long_options[] = {
+ {"proxy", no_argument, NULL, 'p'},
+ {"stub", no_argument, NULL, 's'},
+ {"version", no_argument, NULL, 'v'},
+ {"help", no_argument, NULL, 'h'},
+ {"language", required_argument, NULL, 'l'},
+ {"input", required_argument, NULL, 'i'},
+ {"output", required_argument, NULL, 'o'},
+ {"namespace", no_argument, NULL, 'n'},
+ {"rpclib", no_argument, NULL, 'r'},
+ {"beta", no_argument, NULL, 'b'},
+ {"thread", no_argument, NULL, 't'},
+ {0, 0, 0, 0}
+ };
+
+ while (true) {
+ int c = getopt_long(argc, argv, "tbpsvhl:i:o:nr", long_options,
+ &option_index);
+ if (c == -1)
+ break;
+
+ switch (c) {
+ case 0:
+ break;
+
+ case 'p':
+ cmd[CMD_PROXY] = 1;
+ break;
+
+ case 's':
+ cmd[CMD_STUB] = 1;
+ break;
+
+ case 'v':
+ cmd[CMD_VERSION] = 1;
+ break;
+
+ case 'h':
+ cmd[CMD_HELP] = 1;
+ break;
+
+ case 'n':
+ opt[OPT_NAMESPACE] = 1;
+ break;
+
+ case 'r':
+ opt[OPT_RPCLIB] = 1;
+ break;
+
+ case 'l':
+ opt[OPT_LANGUAGE] = 1;
+ options->language_ = optarg;
+ break;
+
+ case 'i':
+ opt[OPT_INPUT] = 1;
+ options->input_ = optarg;
+ break;
+
+ case 'o':
+ opt[OPT_OUTPUT] = 1;
+ options->output_ = optarg;
+ break;
+
+ case 'b':
+ options->isBetaEnabled_ = true;
+ break;
+
+ case 't':
+ options->isThreadEnabled_ = true;
+ break;
+
+ default:
+ cmd[CMD_HELP] = 1;
+ }
+ }
+
+ if (cmd[CMD_VERSION]) {
+ options->PrintVersion();
+ return std::shared_ptr<Options>(nullptr);
+ }
+
+ if (cmd[CMD_HELP]) {
+ options->PrintUsage();
+ return std::shared_ptr<Options>(nullptr);
+ } else if (!cmd[CMD_PROXY] && !cmd[CMD_STUB]) {
+ std::cerr << "Stub or proxy must be specified." << std::endl;
+ options->PrintSample();
+ return std::shared_ptr<Options>(nullptr);
+ } else if (!opt[OPT_LANGUAGE]) {
+ std::cerr << "Select a language (C, C++, C#).." << std::endl;
+ options->PrintSample();
+ return std::shared_ptr<Options>(nullptr);
+ } else if (!opt[OPT_INPUT]) {
+ std::cerr << "No input file." << std::endl;
+ options->PrintSample();
+ return std::shared_ptr<Options>(nullptr);
+ } else if (opt[OPT_INPUT]) {
+ std::ifstream in_file(options->input_.c_str());
+ if (!in_file.good()) {
+ std::cerr << "Not exist input file." << std::endl;
+ return std::shared_ptr<Options>(nullptr);
+ }
+ } else if (!opt[OPT_OUTPUT]) {
+ std::cerr << "No out file." << std::endl;
+ options->PrintSample();
+ return std::shared_ptr<Options>(nullptr);
+ }
+
+ options->isProxy_ = cmd[CMD_PROXY] ? true : false;
+ options->hasNamespace_ = opt[OPT_NAMESPACE] ? true : false;
+ options->hasRpcPortLib_ = opt[OPT_RPCLIB] ? true : false;
+
+ return options;
+}
+
+} // namespace tidl
diff --git a/idlc/options.h b/idlc/options.h
new file mode 100644
index 0000000..3a09cfb
--- /dev/null
+++ b/idlc/options.h
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef TIDL_IDLC_OPTIONS_H_
+#define TIDL_IDLC_OPTIONS_H_
+
+#include <string>
+#include <iostream>
+#include <memory>
+
+namespace tidl {
+class Options {
+ public:
+ Options();
+ ~Options() = default;
+
+ static std::shared_ptr<Options> Parse(int argc, char** argv);
+ bool IsProxy() const { return isProxy_; }
+ bool IsBetaEnabled() const { return isBetaEnabled_; }
+ bool IsThreadEnabled() const { return isThreadEnabled_; }
+ std::string GetLanguage() const { return language_; }
+ std::string GetInput() const { return input_; }
+ std::string GetOutput() const { return output_; }
+ bool HasNamespace() const { return hasNamespace_; }
+ bool HasRpcPortLib() const { return hasRpcPortLib_; }
+
+ private:
+ enum Cmd {
+ CMD_PROXY,
+ CMD_STUB,
+ CMD_VERSION,
+ CMD_HELP,
+ CMD_MAX
+ };
+
+ enum Opt {
+ OPT_LANGUAGE,
+ OPT_INPUT,
+ OPT_OUTPUT,
+ OPT_NAMESPACE,
+ OPT_RPCLIB,
+ OPT_MAX
+ };
+
+ void PrintUsage();
+ void PrintVersion();
+ void PrintSample();
+
+ private:
+ bool isProxy_;
+ std::string language_;
+ std::string input_;
+ std::string output_;
+ std::string help_;
+ bool hasNamespace_ = false;
+ bool hasRpcPortLib_ = false;
+ bool isBetaEnabled_ = false;
+ bool isThreadEnabled_ = false;
+};
+
+} // namespace tidl
+
+#endif // TIDL_IDLC_OPTIONS_H_ \ No newline at end of file