Skip to content

Possibility to dynamically add imports in patterns #18

@MiranCZ

Description

@MiranCZ

Sometimes you need to use a specific path in your pattern.
For example, when a method is private in other versions you need to import the accessor for it.

@Pattern
public int getPortalCooldown(Entity entity) {
    //#if MC >= 12001
    //$$ return entity.getPortalCooldown();
    //#else
    return ((EntityAccessor) entity).getPortalCooldown();
    //#endif
}

So either you have to go and manually add import for it in all classes that use the method or supply a full path in the pattern instead of relying on the classes to import it

return ((mod.example.mixins.EntityAccessor) entity).getPortalCooldown();

But I feel like that looks a bit ugly in preprocessed the code.

So I think adding a way to define dynamic imports for patterns that would be added to the preprocessed code would be a nice addition (although I don't understand how the preprocessor works under the hood, so what I am asking might be impossible).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    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