platform/core/appfw/tidl.git
4 months agoFix wrong implementation 95/312995/1
Hwankyu Jhun [Tue, 18 Jun 2024 06:59:17 +0000 (15:59 +0900)]
Fix wrong implementation

The param_name should be used to set the proper value.

Change-Id: I6b4f06e6491455b2590b29d5b1806d8f4389dbfd
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
4 months agoRelease version 2.0.11 88/312988/1
Hwankyu Jhun [Tue, 18 Jun 2024 06:16:19 +0000 (15:16 +0900)]
Release version 2.0.11

Changes:
 - Fix bugs related to ref keyword
 - Modify version 2 generator

Change-Id: Ib41b252f69d3fcd476afc407058a488fbba99adb
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
4 months agoModify version 2 generator 87/312987/1
Hwankyu Jhun [Tue, 18 Jun 2024 06:03:06 +0000 (15:03 +0900)]
Modify version 2 generator

To remove build warning messages, this patch adds initial value settings.

Change-Id: I4ff319f7a86f060e77d14c517e149680c27cc5ec
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
4 months agoFix bugs related to ref keyword 79/312979/2
Hwankyu Jhun [Tue, 18 Jun 2024 05:04:58 +0000 (14:04 +0900)]
Fix bugs related to ref keyword

The ref parameter must be written and read.

Change-Id: I0a98164213c033329ad7b58262b9669caec6cdf3
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
4 months agoRelease version 2.0.10 77/312577/1 accepted/tizen/unified/20240612.160653 accepted/tizen/unified/dev/20240620.005245 accepted/tizen/unified/x/20240614.011736
Hwankyu Jhun [Wed, 12 Jun 2024 01:16:02 +0000 (10:16 +0900)]
Release version 2.0.10

Changes:
 - Fix README markdown
 - Fix user enum type out parameter in c proxy
 - Add a new option for inhouse developers

Change-Id: I751f3523484295f9b714a7e2d0dd45c84cdd9941
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
4 months agoAdd a new option for inhouse developers 09/312509/3
Hwankyu Jhun [Tue, 11 Jun 2024 02:34:58 +0000 (11:34 +0900)]
Add a new option for inhouse developers

The 'extension' options is added.
It provides the function that checks whether the pending request exists
or not.

Change-Id: Iab71b0dc8fc5ef7c2d80dd721ed17dc4682f381a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
5 months agoFix user enum type out parameter in c proxy 13/311813/1
Ilho Kim [Tue, 28 May 2024 09:57:46 +0000 (18:57 +0900)]
Fix user enum type out parameter in c proxy

Change-Id: I0c7715ea9ed885a1c68c01bd93bb790f07303836
Signed-off-by: Ilho Kim <ilho159.kim@samsung.com>
5 months agoFix README markdown 10/311210/1
Hwankyu Jhun [Thu, 16 May 2024 06:15:56 +0000 (15:15 +0900)]
Fix README markdown

This patch fixes wrong code implementation.

Change-Id: Icfd3ed02ab15f4fd2f20308654b40e8698907759
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months agoRelease version 2.0.9 04/310304/1 accepted/tizen/unified/20240426.035437 accepted/tizen/unified/toolchain/20240507.011819 accepted/tizen/unified/x/20240430.094851
Hwankyu Jhun [Thu, 25 Apr 2024 06:14:51 +0000 (15:14 +0900)]
Release version 2.0.9

Changes:
 - Notify stub termination for local execution mode

Change-Id: I21c9b4c04cc4f8c25ed93ef142a05828af63f918
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months agoNotify stub termination for local execution mode 98/310298/1
Hwankyu Jhun [Thu, 25 Apr 2024 05:36:55 +0000 (14:36 +0900)]
Notify stub termination for local execution mode

While calling a destructor of the stub, the proxy should get the
disconnected event from the stub.

Change-Id: I2ae41f3f69ede236059183ca0ce217beb2ff7a28
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months agoRelease version 2.0.8 90/310290/1
Hwankyu Jhun [Thu, 25 Apr 2024 02:24:53 +0000 (11:24 +0900)]
Release version 2.0.8

Changes:
 - [cion] Fix delegate callback id
 - Fix C++ generator of protocol version 2
 - Fix C++ Generator of version 2

Change-Id: Ie22779522dd9d050e509eb9b2ad7201384ad22f0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months agoFix C++ Generator of version 2 79/310279/1
Hwankyu Jhun [Thu, 25 Apr 2024 02:00:17 +0000 (11:00 +0900)]
Fix C++ Generator of version 2

- Add setting the initialization value

Change-Id: I7226c5892c948a75b044fd6ca21257ac8c67ec10
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months agoFix C++ generator of protocol version 2 68/310268/2
Hwankyu Jhun [Thu, 25 Apr 2024 01:01:10 +0000 (10:01 +0900)]
Fix C++ generator of protocol version 2

- Remove uid check before getting appid
- Check whether the listener is nullptr or not

Change-Id: I310d080fd9d3c0ed70b96bb283aff71e386fd084
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
6 months ago[cion] Fix delegate callback id 69/310069/2
jusung son [Mon, 22 Apr 2024 04:57:10 +0000 (13:57 +0900)]
[cion] Fix delegate callback id

Change-Id: I5cf4c2ec163b356a975faa99732320e608b1d704
Signed-off-by: jusung son <jusung07.son@samsung.com>
7 months agoRelease version 2.0.7 66/309266/1 accepted/tizen/unified/20240408.160637 accepted/tizen/unified/x/20240409.070710
Hwankyu Jhun [Mon, 8 Apr 2024 05:25:34 +0000 (14:25 +0900)]
Release version 2.0.7

Changes:
 - Remove build tests

Change-Id: I2e2b89c4f1ae93e67664d671fc4e70ff5d6e2df0
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
7 months agoRemove build tests 57/309257/1
Hwankyu Jhun [Mon, 8 Apr 2024 04:51:36 +0000 (13:51 +0900)]
Remove build tests

To remove dependencies of core APIs, this patch removes build tests.
The build tests is moved to the internal repository(appfw/tidl-build-test).

Change-Id: I10e664a27c0c208c21909acd90b5e18c2c9a3a66
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
7 months agoModify gcov test command options 02/308302/2 accepted/tizen/unified/20240322.174251 accepted/tizen/unified/x/20240326.073806
Changgyu Choi [Thu, 21 Mar 2024 05:27:15 +0000 (14:27 +0900)]
Modify gcov test command options

Change-Id: I044a32af4a2e072d9e0f7035db897a7ddfacaf52
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
7 months agoFix lcov output name to package 87/308287/1
Changgyu Choi [Thu, 21 Mar 2024 01:44:49 +0000 (10:44 +0900)]
Fix lcov output name to package

Change-Id: I857fccc6aef319f2003e387963d4361672ae06af
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
7 months agoRelease version 2.0.6 77/307977/2 accepted/tizen/unified/20240315.111217 accepted/tizen/unified/20240315.155149
Changgyu Choi [Fri, 15 Mar 2024 01:18:17 +0000 (10:18 +0900)]
Release version 2.0.6

Changes:
 - Fix from -std=c++11 to -std=c++14 for gtest 1.14.0 version upgrade
 - Increase c++ version to 17

Change-Id: I29e9f6cd1b060e51180585a367a9561883892367
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
7 months agoIncrease c++ version to 17 69/307969/2
Changgyu Choi [Fri, 15 Mar 2024 01:05:33 +0000 (10:05 +0900)]
Increase c++ version to 17

Dibs can support c++17.

Change-Id: Ia040c73cadb68045a894df604e8704b412718dc9
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
7 months agoFix from -std=c++11 to -std=c++14 for gtest 1.14.0 version upgrade 24/307924/1 accepted/tizen/unified/x/20240319.055644
JinWang An [Thu, 14 Mar 2024 08:02:14 +0000 (17:02 +0900)]
Fix from -std=c++11 to -std=c++14 for gtest 1.14.0 version upgrade

Change-Id: I9c87e3a56256ad3381ad627db8e2b3c0978a15fd
Signed-off-by: JinWang An <jinwang.an@samsung.com>
7 months agoRelease version 2.0.5 99/307599/1 accepted/tizen/unified/20240313.133849 accepted/tizen/unified/20240313.135211 accepted/tizen/unified/x/20240314.073446
Changgyu Choi [Tue, 12 Mar 2024 04:43:30 +0000 (13:43 +0900)]
Release version 2.0.5

Changes:
 - Remove log prints
 - Fix lcov option for lcov 2.0

Change-Id: If3c4b6bf32b297717897e21f878299ccb4a562f7
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
7 months agoFix lcov option for lcov 2.0 49/307549/1
Changgyu Choi [Tue, 12 Mar 2024 04:13:24 +0000 (13:13 +0900)]
Fix lcov option for lcov 2.0

"mismatch,graph,unused" options are added.

Change-Id: Ic6e7738d390bfddc88f5177bcd2890ddbebfd78f
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
8 months agoRemove log prints 97/307097/1
Hwankyu Jhun [Tue, 5 Mar 2024 01:00:12 +0000 (10:00 +0900)]
Remove log prints

The generated code prints the version and sequence informations for debugging.
The log output makes a communication delay. This patch removes debug log messages.

Change-Id: I2a4de4c637fb76d174d8e496cd3c8f8b698cab2e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
9 months agoRelease version 2.0.4 84/305284/2 accepted/tizen/unified/20240201.165042 accepted/tizen/unified/toolchain/20240311.065245 accepted/tizen/unified/x/20240205.064144
Changgyu Choi [Wed, 31 Jan 2024 00:26:59 +0000 (09:26 +0900)]
Release version 2.0.4

Changes:
 - Change version to 9.0

Change-Id: I306df4e6b4f12d400f555c2e158fd32b31f983db
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
9 months agoChange version to 9.0 83/305283/1
Changgyu Choi [Wed, 31 Jan 2024 00:05:45 +0000 (09:05 +0900)]
Change version to 9.0

Change-Id: Iff09744277e57283d25fbbdbed7f3e5040d8906b
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
10 months agoRelease version 2.0.3 66/303166/2 accepted/tizen_unified_riscv accepted/tizen/unified/20231221.165344 accepted/tizen/unified/riscv/20231221.111520
Changgyu Choi [Thu, 21 Dec 2023 02:22:31 +0000 (11:22 +0900)]
Release version 2.0.3

Changes:
 - Fix build fail issue for gcc13

Change-Id: Ifb1c881a57f6792debab46888a3d5a1d106ee548
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
10 months agoFix build fail issue for gcc13 65/303165/2
Changgyu Choi [Thu, 21 Dec 2023 02:04:25 +0000 (11:04 +0900)]
Fix build fail issue for gcc13

gcc13 has a bug related with array-bounds checking.

References:
 - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523

Change-Id: Ie4bad81b42c548c5e93fd36c81256ba4d9e2edf4
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
11 months agoRelease version 2.0.2 99/302399/1 accepted/tizen/unified/20231207.171704
Hwankyu Jhun [Wed, 6 Dec 2023 06:45:57 +0000 (15:45 +0900)]
Release version 2.0.2

Changes:
 - Modify README markdown
 - Add locking and unlocking mutex
 - [v2] Add locking and unlocking mutex

Change-Id: Ica45d822cc841f09a13bea0620b99ad7aeb6fdb9
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
11 months ago[v2] Add locking and unlocking mutex 92/302392/2
Hwankyu Jhun [Wed, 6 Dec 2023 06:32:27 +0000 (15:32 +0900)]
[v2] Add locking and unlocking mutex

It is problematic if a callback invoke event is delivered to the main thread
while calling callback dispose() in the sub-thread.
To fix the thread safe issue, this patch adds locking & unlocking mutex.

Change-Id: I3617a0896463ea2bea3574e00812a937b179b6ec
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
11 months agoAdd locking and unlocking mutex 80/302380/1
Hwankyu Jhun [Wed, 6 Dec 2023 04:49:56 +0000 (13:49 +0900)]
Add locking and unlocking mutex

It is problematic if a callback invoke event is delivered to the main thread
while calling callback dispose() in the sub-thread.
To fix the thread safe issue, this patch adds locking & unlocking mutex.

Change-Id: I4cd8d3a47d40fadc773775f9c6b6aa7a4000ab6e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoModify README markdown 52/299052/3
Hwankyu Jhun [Tue, 19 Sep 2023 04:53:03 +0000 (13:53 +0900)]
Modify README markdown

- Fixes typo
- Changes '**Note**' to '[!NOTE]'

Change-Id: Ia7290c1e680d49ddc0d3659d27e1f3958ce450df
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoRelease version 2.0.1 84/298984/1
Hwankyu Jhun [Mon, 18 Sep 2023 05:31:14 +0000 (14:31 +0900)]
Release version 2.0.1

Changes:
 - Update README markdown for protocol version 2

Change-Id: I5a366bc4ccc5ba48fe515fae31f3b03f7f1d9233
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoUpdate README markdown for protocol version 2 29/298929/8
Hwankyu Jhun [Fri, 15 Sep 2023 09:29:09 +0000 (18:29 +0900)]
Update README markdown for protocol version 2

From Tizen 8.0, the following features are supported:
 - Enum Type
 - Import Another TIDL File
 - Method Privilege
 - Map and Set Container Type
 - Marshalling Type Info
 - Struct Inheritance
 - Remote Exception
 - Local Execution Mode
 - Private Sharing (without -b option)

Change-Id: I60bce05d855423576ff9868c0f74fc40518ee98c
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoRelease version 2.0.0 19/298819/1 accepted/tizen/8.0/unified/20231005.093116 accepted/tizen/unified/20230914.164942 tizen_8.0_m2_release
Hwankyu Jhun [Thu, 14 Sep 2023 02:08:32 +0000 (11:08 +0900)]
Release version 2.0.0

Changes:
 - Support 'struct' inheritance
 - Support local execution mode
 - Impelment C++ Generator
 - Implement C# Generator
 - Fix build error
 - Implement C++ Group Generator
 - Separate generator code from main file
 - Modify Map & Set implementation of C generator
 - Modify supporting enum type
 - Modify C Generator
 - Support Map & Set container for C++ Generator
 - Support enum type for C++ generator
 - Modify C Generator related to Remote Exception feature
 - Fix a bug of C++ Generator
 - Support enum type for C# generator
 - Support Map & Set container for C# Generator
 - Fix a bug of C# Generator
 - Fix coding style
 - Support method privilege check for C# Generator
 - Fix bugs related to unit map
 - Support RemoteException for C# Generator
 - Change unit map api signature for C# Generator
 - Support 'struct' inheritance feature for C# Generator
 - Support RemoteException for C++ Generator
 - Support method privilege check for C++ Generator
 - Support 'struct' inheritance feature for C++ Generator
 - Support Local Execution Mode for C++ Generator
 - Modify port name of C stub code
 - Modify local execution mode of C++ generator
 - Modify LocalExecutionMode of C++ Generator
 - Modify LocalExecutionMode of C Generator
 - Support Local Execution Mode for C# Generator

Change-Id: Iff68da9b1790600a5ed75aae2e8eb90e957b18ac
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoSupport Local Execution Mode for C# Generator 58/298758/4
jusung son [Wed, 13 Sep 2023 07:16:47 +0000 (16:16 +0900)]
Support Local Execution Mode for C# Generator

Change-Id: I334e779f472e3a6b0fe7c128db69c3eed21b8621
Signed-off-by: jusung son <jusung07.son@samsung.com>
13 months agoModify LocalExecutionMode of C Generator 22/298622/9
Hwankyu Jhun [Mon, 11 Sep 2023 23:30:33 +0000 (08:30 +0900)]
Modify LocalExecutionMode of C Generator

The event will be delivered using g_idle_add() to avoid stack overflow.

Change-Id: I1fbaba89f607174ff1f28719a51eeee5fa7ad47f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoModify LocalExecutionMode of C++ Generator 01/298601/5
Hwankyu Jhun [Mon, 11 Sep 2023 08:34:00 +0000 (17:34 +0900)]
Modify LocalExecutionMode of C++ Generator

If the client calls the Connect() method twice, the method returns
an error value.
The rpc_port_stub_<INPUT_FILE>_lem_xxx() functions uses g_idle_add() if
the caller thread ID is not equal to the process ID.

Change-Id: I5e91b6df7367293f6e021028ed78c060b2d125f9
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
13 months agoModify local execution mode of C++ generator 99/298599/1
Hwankyu Jhun [Mon, 11 Sep 2023 08:04:03 +0000 (17:04 +0900)]
Modify local execution mode of C++ generator

In the previous implementation, the local execution mode only supports
the asynchronous connection request. After this patch is applied,
the synchronous connection request is supported.

Change-Id: I3ad1831bdce99426e5a393b4633d1566a8812c36
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
14 months agoModify port name of C stub code 67/297867/1
Hwankyu Jhun [Mon, 28 Aug 2023 00:45:02 +0000 (09:45 +0900)]
Modify port name of C stub code

This patch changes the hardcoded name to the proper name.

Change-Id: I457ef2a2b24757ac292b48adb8f92b60ab209308
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
14 months agoSupport Local Execution Mode for C++ Generator 54/297654/8
Hwankyu Jhun [Tue, 22 Aug 2023 08:20:42 +0000 (17:20 +0900)]
Support Local Execution Mode for C++ Generator

This patch supports the local execution mode. If the stub is equal to
the proxy, the local method will be invoked.

Change-Id: I913865b82f079b95b9b5d6c4c28b12792089467e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
14 months agoSupport 'struct' inheritance feature for C++ Generator 61/297361/8
Hwankyu Jhun [Thu, 17 Aug 2023 09:30:18 +0000 (18:30 +0900)]
Support 'struct' inheritance feature for C++ Generator

This patch supports the struct inheritance feature.

Change-Id: Ic3c4749316c8fc870da6e621976e6f094cef9d38
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
14 months agoSupport method privilege check for C++ Generator 61/297261/7
Hwankyu Jhun [Wed, 16 Aug 2023 05:12:18 +0000 (14:12 +0900)]
Support method privilege check for C++ Generator

This patch supports the method privilege check feature. The developer
can set the privilege for each methods.

Change-Id: I9991b3554712878580700127b17ea969617c3e65
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
14 months agoSupport RemoteException for C++ Generator 51/297251/12
Hwankyu Jhun [Fri, 11 Aug 2023 00:10:33 +0000 (09:10 +0900)]
Support RemoteException for C++ Generator

The stub can throw the RemoteException instance to the proxy.

Change-Id: I2f0ff327f88012ec10b120e1c8d73c1a3bc92f13
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
14 months agoSupport 'struct' inheritance feature for C# Generator 06/297806/3
jusung son [Thu, 24 Aug 2023 11:06:17 +0000 (20:06 +0900)]
Support 'struct' inheritance feature for C# Generator

Change-Id: Ib87019148b06e7f3d1f8de36d6c5f2a8b96f4903
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoChange unit map api signature for C# Generator 04/297804/1
jusung son [Thu, 24 Aug 2023 10:56:35 +0000 (19:56 +0900)]
Change unit map api signature for C# Generator

internal void Read(string name, string type, out <PARAM_TYPE> value) =>
internal void Read(string name, out <PARAM_TYPE> value)

internal void Write(string name, string type, <PARAM_TYPE> value) =>
internal void Write(string name, <PARAM_TYPE> value)

Change-Id: I630fc3aac82cbe89ad217fba01ab2008f736fd22
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoSupport RemoteException for C# Generator 35/297435/2
jusung son [Fri, 18 Aug 2023 07:13:30 +0000 (16:13 +0900)]
Support RemoteException for C# Generator

Change-Id: I2026724c180361dda912e8642476b55ff84dda89
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoFix bugs related to unit map 14/297314/2
jusung son [Thu, 17 Aug 2023 00:05:02 +0000 (09:05 +0900)]
Fix bugs related to unit map

Depending on the parameter marshaling feature,
it is not an error even if there are no parameters.

Change-Id: I4b624b8aff87260a6814776168be9ad13dc37dac
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoSupport method privilege check for C# Generator 69/297269/2
jusung son [Wed, 16 Aug 2023 06:09:54 +0000 (15:09 +0900)]
Support method privilege check for C# Generator

Change-Id: I5bf46f178257376a4d8b19767a864461b3c41c9b
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoFix coding style 49/297249/1
jusung son [Wed, 16 Aug 2023 01:26:25 +0000 (10:26 +0900)]
Fix coding style

Change-Id: I0b70c79a4af3695fbd3aac39e30c3363a771542e
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoFix a bug of C# Generator 48/297248/2
jusung son [Wed, 16 Aug 2023 01:05:53 +0000 (10:05 +0900)]
Fix a bug of C# Generator

- If there is no delegate, callback base is not generated.

Change-Id: Ib12d0cb50b4a2967550cc1df8b1e9d3bc7a21ade
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoSupport Map & Set container for C# Generator 77/297177/4
jusung son [Fri, 11 Aug 2023 07:21:54 +0000 (16:21 +0900)]
Support Map & Set container for C# Generator

This patch supports map and set container types.

Change-Id: I3f8284ad24a321222d5ba8fbb7ab8876f0a3852c
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoSupport enum type for C# generator 56/297156/2
jusung son [Fri, 11 Aug 2023 05:05:28 +0000 (14:05 +0900)]
Support enum type for C# generator

This patch supports the enumeration type.

Change-Id: I4d98d81bb122fec217117458057c82d0ef74c470
Signed-off-by: jusung son <jusung07.son@samsung.com>
14 months agoFix a bug of C++ Generator 39/297139/2
Hwankyu Jhun [Fri, 11 Aug 2023 01:04:20 +0000 (10:04 +0900)]
Fix a bug of C++ Generator

The type name should use the underbar instead of dot.
e.g. map<int, peer_info.channel_type>
=> map_int_peer_info_channel_type

Change-Id: I2fc9566483b8f2433a9611cff3830fb38c523f79
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoModify C Generator related to Remote Exception feature 99/297099/3
Hwankyu Jhun [Thu, 10 Aug 2023 07:31:40 +0000 (16:31 +0900)]
Modify C Generator related to Remote Exception feature

This patch modifies the remote exception feature. The interface name is
removed from the remote exception handle.

Changes:
 - Remove the interface name from the remote exception handle
 - Adjust coding style

Change-Id: Ib79e7c68031e395aeca24be112477b06e3af85c6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoSupport enum type for C++ generator 78/296978/12
Hwankyu Jhun [Tue, 8 Aug 2023 04:30:17 +0000 (13:30 +0900)]
Support enum type for C++ generator

This patch supports the enumeration type.

Change-Id: If6dce33a7e5c6ba87bdf9dd84e10641b6642c08a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoSupport Map & Set container for C++ Generator 79/296879/10
Hwankyu Jhun [Mon, 7 Aug 2023 05:10:12 +0000 (14:10 +0900)]
Support Map & Set container for C++ Generator

This patch supports map and set container types.

Change-Id: I9bf1e9164b1b7050b94584194064b8f339d24112
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoModify C Generator 26/297026/1
Hwankyu Jhun [Wed, 9 Aug 2023 05:54:13 +0000 (14:54 +0900)]
Modify C Generator

- Modifies SmartIndent method
- Modifies code blocks for coding style
- Modifies log message related to enum type

Change-Id: I145645d7de6304c24fa014bf83fbd72d79ed4bfc
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoModify supporting enum type 10/297010/2
Hwankyu Jhun [Tue, 8 Aug 2023 22:50:11 +0000 (07:50 +0900)]
Modify supporting enum type

To use the enum type of the other structure, the developer should set
the structure name explicitly.

Change-Id: Idc2776cc4f51ef7c05bab5b1e5a83d50f3eb6f43
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoModify Map & Set implementation of C generator 50/296950/6
Hwankyu Jhun [Tue, 8 Aug 2023 01:42:15 +0000 (10:42 +0900)]
Modify Map & Set implementation of C generator

The key type of map and set containers should be 'char', 'int', 'short',
'string', 'bool', float' and 'double'.

Change-Id: I92c3ac2f36d476733d1a8a05677c8e90c4576a2a
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoSeparate generator code from main file 50/296750/5
Hwankyu Jhun [Fri, 4 Aug 2023 04:06:14 +0000 (13:06 +0900)]
Separate generator code from main file

The code generators are separated.

Adds:
 - CodeGenerator
 - CionGenerator
 - MqttGenerator
 - DefaultGenerator
 - version2::DefaultGenerator

Change-Id: I0287003d997765a7760ef27486bd1047dc55d916
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoImplement C++ Group Generator 50/296450/9
Hwankyu Jhun [Fri, 28 Jul 2023 04:05:13 +0000 (13:05 +0900)]
Implement C++ Group Generator

This is for protocol verion 2. Marshaling type info feature is added.

Change-Id: If32a2a884241a509f14d6c133feab25ef6ce613b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoFix build error 07/296607/1
Hwankyu Jhun [Wed, 2 Aug 2023 04:46:45 +0000 (13:46 +0900)]
Fix build error

- Add a missing header inclusion

Change-Id: I33e3acd3887cada8b49e179a41e78043d2bcbf52
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoImplement C# Generator 47/296547/4
jusung son [Tue, 1 Aug 2023 01:56:11 +0000 (10:56 +0900)]
Implement C# Generator

This is for protocol verion 2. Marshaling type info feature is added.

Change-Id: I55c4f708f94e796fcf0eedd9abb70c2860f05680
Signed-off-by: jusung son <jusung07.son@samsung.com>
15 months agoImpelment C++ Generator 58/295558/33
Hwankyu Jhun [Thu, 13 Jul 2023 06:49:11 +0000 (15:49 +0900)]
Impelment C++ Generator

Type marsharling info is included to the parcel data.
To save the information to the parcel, Unit and UnitMap classes are added.

Change-Id: I8eb2b6e1d924702b2b84b1f20bc798bb2b6c5c1d
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
15 months agoSupport local execution mode 56/295656/4
jusung son [Wed, 12 Jul 2023 07:42:32 +0000 (16:42 +0900)]
Support local execution mode

Change-Id: I513c91723010011fe6329d786ac3a0ea4e890ae9
Signed-off-by: jusung son <jusung07.son@samsung.com>
16 months agoSupport 'struct' inheritance 74/288474/16
Hwankyu Jhun [Fri, 17 Feb 2023 04:12:18 +0000 (04:12 +0000)]
Support 'struct' inheritance

After this feature is applied, the developer can make a derived structure.
If the method uses the base structure parameter, the derived structure
can be passed to the method.

Change-Id: If24548d6460c25417a56e0a4dbc67f60e66a0f4f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
16 months agoRelease version 1.11.4 55/295155/1 accepted/tizen/unified/20230705.063732 accepted/tizen/unified/dev/20230726.115740
Hwankyu Jhun [Mon, 3 Jul 2023 08:39:03 +0000 (08:39 +0000)]
Release version 1.11.4

Changes:
 - Fix build error for gcc 12.2.0
 - Fix sign compare warning
 - Change version to 8.0
 - Change version to 8.0
 - Fixed the build error using gcc 13

Change-Id: Ie0b6c828d2f8405df307c5dcb650351a1937026e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
16 months agoFixed the build error using gcc 13 42/295142/1
Hwankyu Jhun [Mon, 3 Jul 2023 08:13:30 +0000 (08:13 +0000)]
Fixed the build error using gcc 13

- Remove unnecessary std::move call

Change-Id: I9c338e46da26342815e23bd7417ae5f18b1437b7
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
17 months agoChange version to 8.0 42/292942/1
Hwankyu Jhun [Wed, 17 May 2023 08:59:05 +0000 (08:59 +0000)]
Change version to 8.0

The version should be 8.0.

Change-Id: Id863268371996ef3c75345c9f4c03d23e3a13a6e
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
17 months agoChange version to 8.0 36/292936/1
Hwankyu Jhun [Wed, 17 May 2023 07:55:35 +0000 (07:55 +0000)]
Change version to 8.0

For building the tidl package in the DIBS, the version should be 8.0.

Change-Id: I14c8fc45568dbbaf6dfe55cabde773ed38ca0ba6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
17 months agoFix sign compare warning 47/292847/1
Hwankyu Jhun [Tue, 16 May 2023 00:00:28 +0000 (00:00 +0000)]
Fix sign compare warning

The type of return value of sizeof is size_t. Some build system enables
'-Wsign-compare' build option. It makes a build warning.
This patch adds a new variable to store the return value of sizeof. And,
it will be used to compare variables.

Change-Id: Iad724ec2ca88cc7b8d5c6cf6b3a15ed6b6c1dd3b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
18 months agoFix build error for gcc 12.2.0 63/291763/1
Hwankyu Jhun [Fri, 21 Apr 2023 04:18:03 +0000 (04:18 +0000)]
Fix build error for gcc 12.2.0

- Add warning ignore option about maybe-uninitialized
- Fix unit test
- Add a blank line for compilation

Change-Id: Ib5fde77d41e8fbffb396eb5b76e7257c557bd947
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
18 months agoRelease version 1.11.3 59/291759/2 accepted/tizen/unified/20230424.185341
Changgyu Choi [Fri, 21 Apr 2023 02:17:50 +0000 (11:17 +0900)]
Release version 1.11.3

Changes:
 - Fix tidl fail issue

Change-Id: I017bad53ffaa187e473cf4de5f8fd100d6f3b00a
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
18 months agoFix tidl fail issue 58/291758/1
Changgyu Choi [Fri, 21 Apr 2023 02:09:44 +0000 (11:09 +0900)]
Fix tidl fail issue

Change-Id: I37f78d49033f6bea496be2a5a8b0303d43cfa7aa
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
18 months agoRelease version 1.11.2 78/291678/2
Changgyu Choi [Thu, 20 Apr 2023 07:07:51 +0000 (16:07 +0900)]
Release version 1.11.2

Changes:
 - Fix build error

Change-Id: Iec89c2f1d868678e2515e24fbd831b3c2a539a85
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
18 months agoFix build error 75/291675/1
jusung son [Thu, 20 Apr 2023 06:44:29 +0000 (15:44 +0900)]
Fix build error

 - Separate the implementations of Protocol 2.

Change-Id: I95bd68b768c40053d23c6bab4fc5054447816ea3
Signed-off-by: jusung son <jusung07.son@samsung.com>
18 months agoRelease version 1.11.1 49/291649/1 accepted/tizen/unified/20230420.153149
Hwankyu Jhun [Thu, 20 Apr 2023 00:52:22 +0000 (00:52 +0000)]
Release version 1.11.1

Changes:
 - Fix static analysis issues

Change-Id: I17d2b031e50f789a0dc9ca23ac1a10106e298a65
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
18 months agoFix static analysis issues 09/291609/3
Hwankyu Jhun [Wed, 19 Apr 2023 06:43:51 +0000 (06:43 +0000)]
Fix static analysis issues

The following cases are fixed:
 - resource leak
 - no effect

Change-Id: I01736acf26cb18d262ccbc0abae6a06ea1e315d5
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
18 months agoRelease version 1.11.0 97/291597/1
Changgyu Choi [Wed, 19 Apr 2023 05:04:42 +0000 (14:04 +0900)]
Release version 1.11.0

Changes:
 - Modify Makefile for DIBS
 - Implement protocol version 2
 - Fix C++ generator
 - Implement C proxy body generator
 - Fix to fail build test
 - Implement C header generator
 - Replace AITT with MQTT
 - Fix build error
 - Implement C group generator
 -  Implement C stub generator
 - Fix dart generator implementation
 - Fix invalid access
 - Remove exception handling from _consumeCommnad()
 - Support map & set container type
 - Fix bugs about map & set container
 - Support enum type
 - Support sending exception feature
 - Support method privilege feature
 - Fix C generator related enumeration
 - Remove unnecessarily generated codes
 - Fix build error
 - Merge "Fix build error" into tizen
 - Add new build tests for protocol v2
 - Fix build tests
 - Change version to 7.5
 - Add missing implementation about ref keyword
 - Support 'import' keyword
 - Add some methods in ReplaceAll
 - Modify dart generator
 - [cion] Implement Dart stub generator
 - [cion] Implement Dart proxy generator
 - [cion] Add a missing disconnect on dart client
 - [cion] Implement sync call method
 - [cion] Fix file transfer logic
 - [cion] Implement Dart group generator

Change-Id: Ifabf76b67ade050dca7301923e61f9b012a80452
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
18 months ago[cion] Implement Dart group generator 24/291424/13
SukhyungKang [Fri, 14 Apr 2023 08:50:32 +0000 (17:50 +0900)]
[cion] Implement Dart group generator

Change-Id: Id97cd1af1f5e16d8a4d12d4035aaa5d86899aa26
Signed-off-by: SukhyungKang <shine.kang@samsung.com>
18 months ago[cion] Fix file transfer logic 30/291530/1
jusung son [Tue, 18 Apr 2023 05:37:59 +0000 (14:37 +0900)]
[cion] Fix file transfer logic

Change-Id: I40035e859a92b23265ed8d4387d033dff09ba463
Signed-off-by: jusung son <jusung07.son@samsung.com>
18 months ago[cion] Implement sync call method 49/291449/2
jusung son [Mon, 17 Apr 2023 05:30:19 +0000 (14:30 +0900)]
[cion] Implement sync call method

Change-Id: I49a5e68b8a9ba2f5066507ec8dc3453a8c11251b
Signed-off-by: jusung son <jusung07.son@samsung.com>
18 months ago[cion] Add a missing disconnect on dart client 69/291369/2
Changgyu Choi [Fri, 14 Apr 2023 01:58:37 +0000 (10:58 +0900)]
[cion] Add a missing disconnect on dart client

Change-Id: I4a455c94f8fbb69ce617f22313a060d4bfbdb546
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
19 months ago[cion] Implement Dart proxy generator 66/291066/9
Changgyu Choi [Fri, 7 Apr 2023 08:28:33 +0000 (17:28 +0900)]
[cion] Implement Dart proxy generator

This patch support the 'file' parameter.

Change-Id: I88e1c2d08c4b6861ef7ece63fe90ad1aa90bf630
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
19 months ago[cion] Implement Dart stub generator 36/290936/5
jusung son [Wed, 5 Apr 2023 08:16:11 +0000 (17:16 +0900)]
[cion] Implement Dart stub generator

Change-Id: I3d12e1d358c96bfffd73ec64f1a188961bf3da95
Signed-off-by: jusung son <jusung07.son@samsung.com>
19 months agoModify dart generator 09/289709/8
Changgyu Choi [Mon, 20 Mar 2023 04:25:55 +0000 (13:25 +0900)]
Modify dart generator

This patch is for below comments

  https://github.com/flutter-tizen/plugins/pull/541#discussion_r1133544326
  https://github.com/flutter-tizen/plugins/pull/543#discussion_r1133542877

Change-Id: Ic6b2b46b10a82df70d351ffab90ec560ceeb0a83
Signed-off-by: Changgyu Choi <changyu.choi@samsung.com>
19 months agoAdd some methods in ReplaceAll 58/290158/1
jh9216.park [Tue, 21 Mar 2023 03:32:59 +0000 (23:32 -0400)]
Add some methods in ReplaceAll

- Add Repeat() method
- Add Remove() method
- Add Replace() method

- Example
constexpr const char CB_FUNCTION[] =
R"__rs_cb(
            pub fn <FN_NAME>(&self, <PARAMS>) <RET>{
                let p = Parcel::new();
                let port = self.proxy.get_port(PortType::Main);
                p.write_i32(MethodId::<METHOD_ID> as i32);
                <SENDER_BODY*><ID>.write_parcel(&mut p);</SENDER_BODY*>
                p.send(&port);

                <SYNC?>let parcel_received = Parcel::from(&port);
                <RECEIVER_BODY*><ID>.read_parcel(&mut parcel_received);</RECEIVER_BODY*>

                <HAS_RETURN?>let mut __ret: <TYPE> = Default::default();
                __ret.read_parcel(&mut parcel_received);
                __ret</HAS_RETURN?></SYNC?>
            }
)__rs_cb";

ret += ReplaceAll(::CB_FUNCTION)
        .Replace("FN_NAME", i->GetID())
        .Replace("PARAMS", GetParameters(i->GetParameters()))
        .Replace("RET", GetRetExpr(*i))
        .Replace("METHOD_ID", (*i).GetID())
        .Repeat("SENDER_BODY", (*i).GetParameters(),
            [](ReplaceAll* ra, const std::unique_ptr<tidl::Parameter>& i) {
          if (i->GetParameterType().GetDirection() == ParameterType::Direction::OUT)
            return false;
          ra->Replace("ID", i->GetID());
          return true;
        })
        .Remove("SYNC", (*i).GetMethodType() == Declaration::MethodType::ASYNC)
        .Repeat("RECEIVER_BODY", (*i).GetParameters(),
            [](ReplaceAll* ra, const std::unique_ptr<tidl::Parameter>& i) {
          if (i->GetParameterType().GetDirection() == ParameterType::Direction::IN)
            return false;
          ra->Replace("ID", i->GetID());
          return true;
        })
        .Remove("HAS_RETURN", (*i).GetType().ToString() == "void" )
        .Replace("TYPE", [&]() {
          return ConvertTypeToString((*i).GetType());
        });

Change-Id: Ic77369977767690181f192ebd6c21df802920ca6
Signed-off-by: jh9216.park <jh9216.park@samsung.com>
19 months agoSupport 'import' keyword 24/289224/5
jusung [Fri, 3 Mar 2023 02:17:07 +0000 (11:17 +0900)]
Support 'import' keyword

Change-Id: I7f382e90717c6de66937675d680504d3ecc9620a
Signed-off-by: jusung <jusung07.son@samsung.com>
20 months agoAdd missing implementation about ref keyword 25/288725/2
Hwankyu Jhun [Wed, 22 Feb 2023 06:23:34 +0000 (06:23 +0000)]
Add missing implementation about ref keyword

If there is the 'ref' keyword, we should read and wrtie the argument.

Change-Id: I027cf6cc3101b474cc8ba07a7428a98d6566c488
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoChange version to 7.5 15/288715/1
Hwankyu Jhun [Wed, 22 Feb 2023 04:14:17 +0000 (04:14 +0000)]
Change version to 7.5

For building the tidl package in the DIBS, the version should be 7.5.

Change-Id: I2110a0e83f7aa6073ef37d936d88d683fea02f00
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoFix build tests 02/288702/1
Hwankyu Jhun [Wed, 22 Feb 2023 00:55:08 +0000 (00:55 +0000)]
Fix build tests

To test generated codes, the codes should be set in the CMakeLists.txt file.
This patch fixes the build failure issues.

Change-Id: I7c77c4d457e2307bfc6ff10f113ee9dc3850c51b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoAdd new build tests for protocol v2 59/288459/3
Hwankyu Jhun [Fri, 17 Feb 2023 00:43:22 +0000 (00:43 +0000)]
Add new build tests for protocol v2

To test protocol v2, the build tests are added.

Change-Id: I41bc494cfbc5bfa6e62135e148829c3bad9fc33b
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoMerge "Fix build error" into tizen
jusung son [Thu, 16 Feb 2023 23:47:43 +0000 (23:47 +0000)]
Merge "Fix build error" into tizen

20 months agoFix build error 57/288457/1
jusung [Thu, 16 Feb 2023 23:33:19 +0000 (08:33 +0900)]
Fix build error

Change-Id: I249ceb1e9e51433b5d1cd16e752c833c950a0557
Signed-off-by: jusung <jusung07.son@samsung.com>
20 months agoRemove unnecessarily generated codes 31/288431/2
jusung [Thu, 16 Feb 2023 09:54:42 +0000 (18:54 +0900)]
Remove unnecessarily generated codes

Change-Id: Ide58fc564a21115af1bfbe61e0c292fb3e6e897d
Signed-off-by: jusung <jusung07.son@samsung.com>
20 months agoFix C generator related enumeration 02/288402/1
Hwankyu Jhun [Thu, 16 Feb 2023 06:31:14 +0000 (06:31 +0000)]
Fix C generator related enumeration

The generated enumeration value is changed to the uppercase.
The prefix of the enumeration is added to the value as below:
<PREFIX>_<NAME>_<OWNER_NAME>_<ENUM_VALUE>
e.g. RPC_PORT_PROXY_MESSAGE_CHANNEL_CLIENT

Change-Id: I7020361f4f1f8ef7ba81071fa4adf7c8801071a6
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoSupport method privilege feature 10/288210/5
Hwankyu Jhun [Tue, 14 Feb 2023 00:52:07 +0000 (00:52 +0000)]
Support method privilege feature

After this patch is applied, the developer can set the method privilege
for each methods as below:
+------------------------------------------------------------------------------+
| interface alarmmgr {                                                         |
|   [privilege = "http://tizen.org/privilege/alarm.set"]                       |
|   int alarm_set(int alarm_id, alarmtime time);                               |
|   ...                                                                        |
| }                                                                            |
+------------------------------------------------------------------------------+

Change-Id: I6d407b991cb2c32025a20fab6c343d7ca7287d35
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoSupport sending exception feature 74/288274/9
Hwankyu Jhun [Tue, 14 Feb 2023 09:26:45 +0000 (09:26 +0000)]
Support sending exception feature

This patch supports sending a remote exception. The server can throw
the remote exception to the client.

Change-Id: I6752837e89b33ad3ed4b09a5f78d8d6c13c6a979
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
20 months agoSupport enum type 49/286749/12
jusung [Thu, 12 Jan 2023 08:36:56 +0000 (17:36 +0900)]
Support enum type

Change-Id: I9878ca3f6afd3dd9ed36632a7064459641e73aca
Signed-off-by: jusung <jusung07.son@samsung.com>