David Reiss | ea2cba8 | 2009-03-30 21:35:00 +0000 | [diff] [blame] | 1 | /* |
| 2 | * Licensed to the Apache Software Foundation (ASF) under one |
| 3 | * or more contributor license agreements. See the NOTICE file |
| 4 | * distributed with this work for additional information |
| 5 | * regarding copyright ownership. The ASF licenses this file |
| 6 | * to you under the Apache License, Version 2.0 (the |
| 7 | * "License"); you may not use this file except in compliance |
| 8 | * with the License. You may obtain a copy of the License at |
| 9 | * |
| 10 | * http://www.apache.org/licenses/LICENSE-2.0 |
| 11 | * |
| 12 | * Unless required by applicable law or agreed to in writing, |
| 13 | * software distributed under the License is distributed on an |
| 14 | * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| 15 | * KIND, either express or implied. See the License for the |
| 16 | * specific language governing permissions and limitations |
| 17 | * under the License. |
| 18 | */ |
| 19 | |
David Reiss | 9a08dc6 | 2008-02-27 01:55:17 +0000 | [diff] [blame] | 20 | namespace cpp yozone |
David Hull | ec2a252 | 2017-07-28 02:09:42 +0200 | [diff] [blame] | 21 | namespace erl consts_ |
Jens Geyer | 7628392 | 2022-06-11 14:24:33 +0200 | [diff] [blame] | 22 | namespace haxe constantsDemo |
Yuxuan 'fishy' Wang | 2acfe0f | 2022-10-21 10:27:40 -0700 | [diff] [blame] | 23 | namespace go constantsdemo |
| 24 | |
| 25 | typedef uuid myUUID |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 26 | |
| 27 | struct thing { |
Jens Geyer | 0b1e951 | 2022-10-14 21:46:37 +0200 | [diff] [blame] | 28 | 1: i32 hello, |
| 29 | 2: i32 goodbye |
| 30 | 3: uuid id |
Yuxuan 'fishy' Wang | 2acfe0f | 2022-10-21 10:27:40 -0700 | [diff] [blame] | 31 | 4: myUUID my_id |
| 32 | 5: optional myUUID my_optional_id |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 33 | } |
| 34 | |
David Reiss | 176ed36 | 2008-06-10 22:56:48 +0000 | [diff] [blame] | 35 | enum enumconstants { |
Mark Slee | d0767c5 | 2007-07-27 22:14:41 +0000 | [diff] [blame] | 36 | ONE = 1, |
| 37 | TWO = 2 |
| 38 | } |
| 39 | |
Anthony F. Molinaro | 71a58a8 | 2010-09-27 19:27:40 +0000 | [diff] [blame] | 40 | // struct thing2 { |
| 41 | // /** standard docstring */ |
| 42 | // 1: enumconstants val = TWO |
| 43 | // } |
David Reiss | 202111d | 2007-08-06 20:38:18 +0000 | [diff] [blame] | 44 | |
David Reiss | 9a4edfa | 2008-05-01 05:52:50 +0000 | [diff] [blame] | 45 | typedef i32 myIntType |
| 46 | const myIntType myInt = 3 |
| 47 | |
Anthony F. Molinaro | 71a58a8 | 2010-09-27 19:27:40 +0000 | [diff] [blame] | 48 | //const map<enumconstants,string> GEN_ENUM_NAMES = {ONE : "HOWDY", TWO: "PARTNER"} |
Mark Slee | d0767c5 | 2007-07-27 22:14:41 +0000 | [diff] [blame] | 49 | |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 50 | const i32 hex_const = 0x0001F |
Jens Geyer | 5ec2121 | 2015-04-26 15:24:59 +0200 | [diff] [blame] | 51 | const i32 negative_hex_constant = -0x0001F |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 52 | |
| 53 | const i32 GEN_ME = -3523553 |
| 54 | const double GEn_DUB = 325.532 |
| 55 | const double GEn_DU = 085.2355 |
| 56 | const string GEN_STRING = "asldkjasfd" |
| 57 | |
Jens Geyer | 5eed3a1 | 2015-12-08 01:32:12 +0100 | [diff] [blame] | 58 | const double e10 = 1e10 // fails with 0.9.3 and earlier |
Yuxuan 'fishy' Wang | 2acfe0f | 2022-10-21 10:27:40 -0700 | [diff] [blame] | 59 | const double e11 = -1e10 |
Jens Geyer | 5eed3a1 | 2015-12-08 01:32:12 +0100 | [diff] [blame] | 60 | |
Jens Geyer | 0b1e951 | 2022-10-14 21:46:37 +0200 | [diff] [blame] | 61 | // uuids are accepted with or without curly braces |
| 62 | const uuid GEN_UUID = '00000000-4444-CCCC-ffff-0123456789ab' |
| 63 | const uuid GEN_GUID = '{00112233-4455-6677-8899-aaBBccDDeeFF}' |
| 64 | |
Yuxuan 'fishy' Wang | 2acfe0f | 2022-10-21 10:27:40 -0700 | [diff] [blame] | 65 | const myUUID MY_UUID = '00000000-4444-CCCC-ffff-0123456789ab' |
| 66 | const myUUID MY_GUID = '{00112233-4455-6677-8899-aaBBccDDeeFF}' |
| 67 | |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 68 | const map<i32,i32> GEN_MAP = { 35532 : 233, 43523 : 853 } |
| 69 | const list<i32> GEN_LIST = [ 235235, 23598352, 3253523 ] |
| 70 | |
| 71 | const map<i32, map<i32, i32>> GEN_MAPMAP = { 235 : { 532 : 53255, 235:235}} |
| 72 | |
| 73 | const map<string,i32> GEN_MAP2 = { "hello" : 233, "lkj98d" : 853, 'lkjsdf' : 098325 } |
| 74 | |
Yuxuan 'fishy' Wang | 2acfe0f | 2022-10-21 10:27:40 -0700 | [diff] [blame] | 75 | const thing GEN_THING = { 'hello' : 325, 'goodbye' : 325352, 'id' : '{00112233-4455-6677-8899-aaBBccDDeeFF}', 'my_id': '00000000-4444-CCCC-ffff-0123456789ab', 'my_optional_id': '00000000-4444-CCCC-ffff-0123456789ab' } |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 76 | |
Yuxuan 'fishy' Wang | 2acfe0f | 2022-10-21 10:27:40 -0700 | [diff] [blame] | 77 | const map<i32,thing> GEN_WHAT = { 35 : { 'hello' : 325, 'goodbye' : 325352, 'id' : '00000000-4444-CCCC-ffff-0123456789ab', 'my_id': '00000000-4444-CCCC-ffff-0123456789ab', 'my_optional_id': '00000000-4444-CCCC-ffff-0123456789ab' } } |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 78 | |
| 79 | const set<i32> GEN_SET = [ 235, 235, 53235 ] |
| 80 | |
Jens Geyer | 0b1e951 | 2022-10-14 21:46:37 +0200 | [diff] [blame] | 81 | const set<uuid> GUID_SET = [ '{00112233-4455-6677-8899-aaBBccDDeeFF}', '00000000-4444-CCCC-ffff-0123456789ab' ] |
Jens Geyer | 62445c1 | 2022-06-29 00:00:00 +0200 | [diff] [blame] | 82 | |
Mark Slee | a4713ea | 2007-01-05 01:09:04 +0000 | [diff] [blame] | 83 | exception Blah { |
| 84 | 1: i32 bing } |
| 85 | |
| 86 | exception Gak {} |
| 87 | |
| 88 | service yowza { |
| 89 | void blingity(), |
| 90 | i32 blangity() throws (1: Blah hoot ) |
| 91 | } |