     let r = root ?? p
     let ctype = e.ctype.isEmpty ? e.type.swift : e.ctype.swift
     let rtype = r.ctype.isEmpty ? r.type.swift : r.ctype.swift
-    let ccode = convenienceConstructorCode(structType, indentation: indentation)(e)
-    let fcode = convenienceConstructorCode(structType, indentation: indentation, factory: true)(e)
+    let ccode = convenienceConstructorCode(structType, indentation: indentation, publicDesignation: "")(e)
+    let fcode = convenienceConstructorCode(structType, indentation: indentation, publicDesignation: "", factory: true)(e)
     let constructors = e.constructors.filter { $0.isConstructorOf(e) && !$0.isBareFactory }
     let factories = (e.constructors + e.methods + e.functions).filter { $0.isFactoryOf(e) }
     let code = "public struct \(structType): \(protocolName) {\n" + indentation +

            }
            let p: String? = consPrefix == firstArgName?.swift ? nil : consPrefix
            let fact = factory ? "static func \(fname.swift)(" : "\(conv)init("
            let code = swiftCode(method, indentation + "\(deprecated)public \(fact)" +
                constructorParam(method, prefix: p) + ")\(returnDeclaration(method)) {\n" +
                    doubleIndent + call(method) +
                    indentation  + ret(method)  + indentation +



/// Swift code for convenience constructors
public func convenienceConstructorCode(_ typeName: String, indentation: String, convenience: String = "", publicDesignation: String = "public ", factory: Bool = false, convertName: @escaping (String) -> String = { $0.camelCase }) -> (GIR.Record) -> (GIR.Method) -> String {
    let isConv = !convenience.isEmpty
    let conv =  isConv ? "\(convenience) " : ""
    return { (record: GIR.Record) -> (GIR.Method) -> String in
