bottlenoselabs / c2cs

Generate C# bindings from a C header.
MIT License
250 stars 18 forks source link

Multi-pass: C Locations #87

Closed lithiumtoast closed 2 years ago

lithiumtoast commented 2 years ago

Ensure that C locations are taken from a preferred source if possible. e.g. when using multi-pass with flecs, the locations flip-flop between Windows and Linux file paths.

        // Function @ flecs.h:4543:19 (/Users/runner/work/flecs-cs/flecs-cs/ext/flecs/include/flecs.h)
        [DllImport(LibraryName, CallingConvention = CallingConvention.Cdecl)]
        public static extern ecs_type_t* ecs_table_get_type(ecs_table_t* table);
        // FunctionPointer @ system.h:66:16 (D:\a\flecs-cs\flecs-cs\ext\flecs\include\flecs\addons\system.h)
        [StructLayout(LayoutKind.Sequential)]
        public struct ecs_system_status_action_t
        {
            public delegate* unmanaged<ecs_world_t*, ecs_entity_t, ecs_system_status_t, void*, void> Pointer;
        }