ccievchant_lignes.fic
- Songtekst one record per line (UTF16 little endian) [9-266]
- VerseID [277-278]
ccievchant.fic
Records start with 10 01 00 ?? 1F F2 5D
https://drive.google.com/file/d/0BwTf-CrCV1VIZlJEUV9uY0VZckltY29PNjV6WXNBOVBJcE5j/view?usp=drivesdk&resourcekey=0-3kPYU_Z0iu5nKdzgvRq17g |
def buildResult = build job: "/PackagePublishers/ArtifactPassingChild", propagate: true | |
println buildResult.number | |
copyArtifacts(projectName: '/PackagePublishers/ArtifactPassingChild', selector: specific("${buildResult.number}")) |
// | |
// Encode Existentials.swift | |
// | |
// This is a workaround for the "Protocol 'Encodable' as a type cannot conform to the protocol itself" paradox. | |
// All the code in this file can be safely removed after upgrading to the swift 5.7 compiler. | |
// Calls to ``TopLevelEncoder/encode(existential: Encodable)`` can then safely be replaced | |
// with a call to the encoder's `encode(_:)` function | |
// due to the "Implicitly Opened Existentials" (SE-0352) feature implemented in swift 5.7: https://github.com/apple/swift-evolution/blob/main/proposals/0352-implicit-open-existentials.md | |
// | |
// Created by Damiaan Dufaux on 09/06/2022. |
enum TypeGenerator { | |
private static var last: Chainable.Type = Chain<Void>.self | |
private enum Chain<X>: Chainable { | |
static func chain() -> Chainable.Type { Chain<Self>.self } | |
} | |
static func next() -> Chainable.Type { | |
Self.last = Self.last.chain() | |
return Self.last | |
} |
extension View { | |
@available(iOS 15.0, macOS 12.0, *) | |
func overlay<Target: View>(align originAlignment: Alignment, to targetAlignment: Alignment, of target: Target) -> some View { | |
let hGuide = HorizontalAlignment(Alignment.TwoSided.self) | |
let vGuide = VerticalAlignment(Alignment.TwoSided.self) | |
return alignmentGuide(hGuide) {$0[originAlignment.horizontal]} | |
.alignmentGuide(vGuide) {$0[originAlignment.vertical]} | |
.overlay(alignment: Alignment(horizontal: hGuide, vertical: vGuide)) { | |
target | |
.alignmentGuide(hGuide) {$0[targetAlignment.horizontal]} |
import SwiftUI | |
// Include this CGPoint extension: https://gist.github.com/Dev1an/7973cee9d960479b35b705f88b7f38c4 | |
public struct RegularPolygon: Shape { | |
let corners: [CGPoint] | |
/** | |
Create a polygon shape with provided number of sides. |
// | |
// ContentView.swift | |
// badger | |
// | |
// Created by Damiaan on 12/05/2021. | |
// | |
import SwiftUI | |
struct Badge: View { |
let stack = UIStackView(arrangedSubviews: []) | |
stack.axis = .vertical | |
let marginGuide = UILayoutGuide() | |
stack.addLayoutGuide(marginGuide) | |
let hugger = marginGuide.widthAnchor.constraint(equalToConstant: 0) | |
hugger.priority = .defaultHigh | |
stack.addConstraint(hugger) | |
func addRow(label: String, text: String) { | |
let labelView = UILabel() |