Skip to content

Use peer macros to hold desired values #4

@LePips

Description

@LePips

Since macros are only additive, can use peer macros instead on the cases to hold the desired values.

Idea:

// declaration
@attached(peer)
public macro EnumCaseValues(_ cases: String...) = #externalMacro(module: "ManyToOneMacros", type: "EnumCaseValues")

// usage
@ManyToOne
enum MyEnum: String {
    
    @EnumCaseValues("New York", "NYC")
    case newYork

	@EnumCaseValues("SLC")
	case saltLakeCity = "Salt Lake City"
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions