-
Notifications
You must be signed in to change notification settings - Fork 0
Pigeon
Generate a C API and bindings for other languages from a simple specification.
.api
API generator, APIGEN, APIGEoN, Pigeon.
A void*
-backed opaque type.
string
Lowers to a pointer to null-terminated char data in languages without first-class string support.
type[]
Lowers to a pointer to data and length argument in languages without first-class variable length array support.
?type
use type0 as type1 [docspec];
enum enum_name
[ docspec ]
{
member0_name [= member0_value]
[ docspec ],
...
};
struct struct_name
[ docspec ]
{
member0_name: member0_type
[ docspec ],
...
};
fn function_name
[ docspec ]
(
[arg0_name:] arg0_type
[ docspec ],
...
) -> ([return0_name:] return0_type
[ docspec ],
...);
In a parameter list, the function name is the argument name. Struct return values are lowered to an output argument pointer to a caller-owned struct which is filled in by the function. Optional return values are lowered to an output argument pointer to a pointer to the underlying type which the function can dereference and set to null. Likewise, optional parameters are a pointer to the underlying type which may be null. The first return will be the return value in languages with only one return value, the others will be out parameters. Parentheses around return type are only required for multiple return values.
namespace namespace_name
[ docspec ]
{
...
};
docspec
[| brief: "brief_docstring" ]
[| detailed: "detailed_docstring" ]
[| deprecated[: "use_instead"]]
For FMTK Users and Mod Developers
For FMTK Developers
Asobo BigFile Format Specification
Asobo Classes
Animation_Z
Binary_Z
Bitmap_Z
Camera_Z
CollisionVol_Z
Fonts_Z
GameObj_Z
GenWorld_Z
GwRoad_Z
Keyframer*_Z
Light_Z
LightData_Z
Lod_Z
LodData_Z
Material_Z
MaterialAnim_Z
MaterialObj_Z
Mesh_Z
MeshData_Z
Node_Z
Omni_Z
Particles_Z
ParticlesData_Z
RotShape_Z
RotShapeData_Z
Rtc_Z
Skel_Z
Skin_Z
Sound_Z
Spline_Z
SplineGraph_Z
Surface_Z
SurfaceDatas_Z
UserDefine_Z
Warp_Z
World_Z
WorldRef_Z
Asobo File Format Idioms
Asobo CRC32
Asobo LZ Compression
Asobo Arithmetic Coding Compression
Asobo Save Game File Format Specification
Asobo Audio Formats
TotemTech/ToonTech/Zouna/ACE/BSSTech/Opal Timeline
Zouna Modding Resources
Miscellaneous