blob: 7a95d67766e679d5f8b65d8603dbe1ac7d6c5a61 [file] [log] [blame]
// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'package:ffigen/src/code_generator/compound.dart';
/// A binding for C Struct.
///
/// For a C structure -
/// ```c
/// struct C {
/// int a;
/// double b;
/// int c;
/// };
/// ```
/// The generated dart code is -
/// ```dart
/// final class Struct extends ffi.Struct {
/// @ffi.Int32()
/// int a;
///
/// @ffi.Double()
/// double b;
///
/// @ffi.Uint8()
/// int c;
///
/// }
/// ```
class Struct extends Compound {
Struct({
super.usr,
super.originalName,
required super.name,
super.isIncomplete,
super.pack,
super.dartDoc,
super.members,
super.isInternal,
}) : super(compoundType: CompoundType.struct);
}