nostrdb: add initial swift integration

This commit is contained in:
William Casarin
2023-07-21 14:54:03 -07:00
parent dc7826c4e5
commit 61051ee853
7 changed files with 289 additions and 1 deletions

29
nostrdb/NdbTagElem.swift Normal file
View File

@@ -0,0 +1,29 @@
//
// NdbTagElem.swift
// damus
//
// Created by William Casarin on 2023-07-21.
//
import Foundation
struct NdbTagElem {
private let note: UnsafeMutablePointer<ndb_note>
private let tag: UnsafeMutablePointer<ndb_tag>
let index: Int32
init(note: UnsafeMutablePointer<ndb_note>, tag: UnsafeMutablePointer<ndb_tag>, index: Int32) {
self.note = note
self.tag = tag
self.index = index
}
func matches_char(c: AsciiCharacter) -> Bool {
return ndb_tag_matches_char(note, tag, index, c.cchar) == 1
}
func string() -> String {
return String(cString: ndb_tag_str(note, tag, index), encoding: .utf8) ?? ""
}
}