[swift-dev] Swift C enum Case Mapping

Austin Zheng austinzheng at gmail.com
Sun Jan 10 15:22:39 CST 2016


Hi Ryan,

Apologies, I should have been more clear. In Xcode you can alt(?)-click on a type (e.g the 'MyType' in "let a : MyType = 123") in the IDE to pop up a little window that shows you the definition, including the type and some other information. If you're on a Linux box or not using an IDE you probably don't have that option.

The only methods I see exposed on the Swift imported type are initializers taking a integer raw value, and a 'rawValue' property for getting back out the raw value. Hope that helps.

Austin

> On Jan 10, 2016, at 1:18 PM, Ryan Lovelett <swift-dev at ryan.lovelett.me> wrote:
> 
> Austin,
>  
> I guess I should say that the `typedef` is coming from a Linux kernel header <http://lxr.free-electrons.com/source/include/linux/dvb/frontend.h?v=3.2>. So I don't think I'm going to be able to add any macros to the definition.
>  
> What do you mean about alt-click? Alt click where?
>  
> On Sun, Jan 10, 2016, at 04:12 PM, Austin Zheng wrote:
>> fe_type is being imported as a struct (alt-click 'fe_type' in Swift). I think if you want it to be imported as an enum you need to use the NS_ENUM macro in the definition, which might not be possible in your case.
>>  
>> Austin
>>  
>>> On Jan 10, 2016, at 1:06 PM, Ryan Lovelett via swift-dev <swift-dev at swift.org <mailto:swift-dev at swift.org>> wrote:
>>>  
>>> typedef enum fe_type {
>>>  FE_QPSK,
>>>  FE_QAM,
>>>  FE_OFDM,
>>>  FE_ATSC
>>> } fe_type_t;
>  

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20160110/869f023b/attachment.html>


More information about the swift-dev mailing list