// Copyright(c) 2025 ZettaScale Technology and others
//
// This program and the accompanying materials are made available under the
// terms of the Eclipse Public License v. 2.0 which is available at
// http://www.eclipse.org/legal/epl-2.0, or the Eclipse Distribution License
// v. 1.0 which is available at
// http://www.eclipse.org/org/documents/edl-v10.php.
//
// SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
module CdrStreamParamHeader {
@final
struct t1 {
@optional long f1;
};
@final
struct t2 {
@optional @id(321) boolean f1;
@optional @id(123) long f2;
};
@final
struct t3_1 {
@optional @id(10) boolean s1;
};
@appendable
struct t3 {
t3_1 f1;
@optional @id(99) string f2;
@optional long long f3;
};
};
module CdrStreamAppendable {
@final
struct f1 {
long m1;
long m2;
};
@appendable
struct a1 {
long m1;
long m2;
};
@appendable
struct a2 {
long m1;
@optional long m2;
};
@appendable
struct a3_1 {
long s1;
long s2;
};
@appendable
struct a3 {
long m1;
@optional a3_1 m2;
};
};
module CdrStreamMutable {
@mutable
struct t1 {
@id(1) uint32 f1;
@id(2) sequence<uint32> f2;
};
};