mirror of
https://bitbucket.org/vendoo/vendoo_v1.0.git
synced 2025-12-25 19:57:41 +00:00
34 lines
847 B
Swift
34 lines
847 B
Swift
//
|
|
// Int+OAuthSwift.swift
|
|
// OAuthSwift
|
|
//
|
|
// Created by Dongri Jin on 1/28/15.
|
|
// Copyright (c) 2015 Dongri Jin. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
|
|
extension Int {
|
|
public func bytes(totalBytes: Int = sizeof(Int)) -> [UInt8] {
|
|
return arrayOfBytes(self, length: totalBytes)
|
|
}
|
|
}
|
|
|
|
func arrayOfBytes<T>(value:T, length:Int? = nil) -> [UInt8] {
|
|
let totalBytes = length ?? (sizeofValue(value) * 8)
|
|
|
|
let valuePointer = UnsafeMutablePointer<T>.alloc(1)
|
|
valuePointer.memory = value
|
|
|
|
let bytesPointer = UnsafeMutablePointer<UInt8>(valuePointer)
|
|
var bytes = [UInt8](count: totalBytes, repeatedValue: 0)
|
|
for j in 0..<min(sizeof(T),totalBytes) {
|
|
bytes[totalBytes - 1 - j] = (bytesPointer + j).memory
|
|
}
|
|
|
|
valuePointer.destroy()
|
|
valuePointer.dealloc(1)
|
|
|
|
return bytes
|
|
}
|