added any2unistr predefined function (artf724008)
[deliverable/titan.core.git] / compiler2 / ttcn3 / signature.h
1 /******************************************************************************
2 * Copyright (c) 2000-2016 Ericsson Telecom AB
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * Balasko, Jeno
10 * Szabo, Janos Zoltan – initial implementation
11 * Tatarka, Gabor
12 *
13 ******************************************************************************/
14 #ifndef SIGNATURE_H
15 #define SIGNATURE_H
16
17 #include "../datatypes.h"
18 #include "compiler.h"
19
20 /* data structures for signature definitions */
21
22 typedef enum { PAR_IN, PAR_OUT, PAR_INOUT } signature_par_direction;
23
24 typedef struct {
25 signature_par_direction direction;
26 const char *type;
27 const char *name;
28 const char *dispname;
29 } signature_par;
30
31 typedef struct {
32 size_t nElements;
33 signature_par *elements;
34 } signature_par_list;
35
36 typedef struct {
37 const char *name;
38 const char *dispname;
39 const char *altname;
40 } signature_exception;
41
42 typedef struct {
43 size_t nElements;
44 signature_exception *elements;
45 } signature_exception_list;
46
47 typedef struct {
48 const char *name;
49 const char *dispname;
50 signature_par_list parameters;
51 const char *return_type;
52 boolean is_noblock;
53 signature_exception_list exceptions;
54 } signature_def;
55
56 #ifdef __cplusplus
57 extern "C" {
58 #endif
59
60 void defSignatureClasses(const signature_def *sdef, output_struct *output);
61
62 #ifdef __cplusplus
63 }
64 #endif
65
66 #endif
This page took 0.030982 seconds and 5 git commands to generate.