Skip to content

Instantly share code, notes, and snippets.

View LeoDeMatos's full-sized avatar
:atom:
Focusing

LeoDeMatos

:atom:
Focusing
  • Paulínia, SP
View GitHub Profile
private func fetchAllEpisodes() {
guard let episodeURLs = character?.episode else { return }
let requests = episodeURLs.compactMap { url in
return createEpisodeRequest(from: url)
}
_ = Publishers.MergeMany(requests)
.compactMap { $0 as? Episode}
.sink { [weak self] episode in
func fetchAllCharacters() {
let jsonDecoder = JSONDecoder()
jsonDecoder.keyDecodingStrategy = .convertFromSnakeCase
let endpoint = RickAndMortyAPI.allCharacters
guard let url = URL(string: endpoint.url) else { return }
var request = URLRequest(url: url)
request.httpMethod = endpoint.method.rawValue
@LeoDeMatos
LeoDeMatos / DispatchGroupExample.swift
Created July 6, 2019 20:38
DispatchGroup Example, you can copy and paste this code to your swift playground to see it working.
import Foundation
func doMultipleWork() {
var items: [Int] = []
let group = DispatchGroup()
group.enter()
doSomeWork(position: 1) {
items.append(1)
group.leave()
@LeoDeMatos
LeoDeMatos / ViewController.swift
Created June 17, 2019 01:20
SwiftUI PreviewProvider
struct ViewControllerPreview: PreviewProvider {
static var previews: some View {
ViewControllerRepresentable()
}
}
@LeoDeMatos
LeoDeMatos / ViewController.swift
Last active June 17, 2019 01:20
SwiftUI Presentable
struct ViewControllerRepresentable: UIViewControllerRepresentable {
func makeUIViewController(context: UIViewControllerRepresentableContext<ViewControllerRepresentable>) -> ViewController {
return ViewController()
}
func updateUIViewController(_ uiViewController: ViewController, context: UIViewControllerRepresentableContext<ViewControllerRepresentable>) {
// code to update your UIViewController
}
}
@LeoDeMatos
LeoDeMatos / ViewController.swift
Last active June 17, 2019 01:20
Plain old UIKit ViewController
import UIKit
import SwiftUI
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let label = UILabel()
label.frame = view.frame
label.textAlignment = .center
@LeoDeMatos
LeoDeMatos / ViewController.swift
Last active June 17, 2019 00:52
Import SwiftUI
import UIKit
import SwiftUI
class ViewController: UIViewController {
import UIKit
import SwiftUI
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let label = UILabel()
label.frame = view.frame