0001    //
0002    //  Glob.swift
0003    //  Swiftline
0004    //
0005    //  Created by Omar Abdelhafith on 30/11/2015.
0006    //  Copyright © 2015 Omar Abdelhafith. All rights reserved.
0007    //
0008    
0009    import Foundation
0010    import Darwin
0011    
0012    class Glob {
0013      
0014      static func expand(pattern: String) -> [String] {
0015        var files = [String]()
0016        var gt: glob_t = glob_t()
0017    
0018        if (glob(pattern.cStringUsingEncoding(NSUTF8StringEncoding)!, 0, nil, &gt) == 0) {
0019          
0020          for i in (0..<gt.gl_matchc) {
0021            files.append(String(CString: gt.gl_pathv[Int(i)], encoding: NSUTF8StringEncoding)!)
0022          }
0023          
0024        }
0025        
0026        globfree(&gt);
0027        return files
0028      }
0029      
0030    }
0031