Slide 46
Slide 46 text
Πϯελϯεੜ
ઐ༻ͷBuilderΛ௨ͯ͠C++ଆͰੜ͢Δ
final public class BuiltinInst : SingleValueInstruction {}
public class SingleValueInstruction : Instruction, Value {}
public class Instruction {}
public struct Builder {
public func createBuiltinBinaryFunction(name: String,
operandType: Type, resultType: Type, arguments: [Value]) -> BuiltinInst {
notifyInstructionsChanged()
return arguments.withBridgedValues { valuesRef in
return name.withBridgedStringRef { nameStr in
let bi = SILBuilder_createBuiltinBinaryFunction(
bridgedInsPoint, location.bridgedLocation, nameStr,
operandType.bridged, resultType.bridged, valuesRef)
return bi.getAs(BuiltinInst.self)
}
}
}
}
46