Skip to content

Simplify and truncate Com method call requirements #35

Description

@marler8997

For COM, in order to accommodate only a single pass I originally leveraged usingnamespace to mixin inherited interface functions. However, the resulting generated code is not easy to follow and this resulted in symbol conflicts, so, I namespaced all methods with the type/interface they came from <interface>_<method>, i.e.

render_target.ID2D1RenderTarget_GetPixelSize();
// rather than
render_target.GetPixelSize();

However, we now have a 2-pass system where we could accumulate the needed info for this, plus, the benefits of simplifying the generated code outweigh the benefits of keeping the generator simple, so let's do this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions