/
class_properties.erb
37 lines (33 loc) · 1.32 KB
/
class_properties.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<%# Properties -%>
<%- entity.properties.each do |property| -%>
public var <%= SwiftHelper.format_name(property.name) %>: <%= SwiftHelper.type(property.return_type) %> {
<%= render('swift/method_forward.erb', { method: property }) -%>
}
<%- end -%>
let rawValue: OpaquePointer
init(rawValue: OpaquePointer) {
self.rawValue = rawValue
}
<%# Initializers -%>
<% entity.static_methods.each do |method| -%>
<% next unless method.name.start_with?('Create') -%>
<% if method.return_type.is_nullable -%>
public init?(<%= SwiftHelper.parameters(method.parameters) %>) {
<%= render('swift/parameter_access.erb', { parameters: method.parameters }) -%>
guard let rawValue = TW<%= entity.name %><%= method.name %>(<%= SwiftHelper.arguments(method.parameters).join(', ') %>) else {
return nil
}
self.rawValue = rawValue
}
<% else -%>
public init(<%= SwiftHelper.parameters(method.parameters) %>) {
<%= render('swift/parameter_access.erb', { parameters: method.parameters }) -%>
rawValue = TW<%= entity.name %><%= method.name %>(<%= SwiftHelper.arguments(method.parameters).join(', ') %>)
}
<% end -%>
<% end -%>
<% unless entity.methods.select{ |x| x.name == "Delete" }.empty? -%>
deinit {
TW<%= entity.name %>Delete(rawValue)
}
<% end -%>