<commit_before>//
//  ServiceInfoEntry.swift
//  VirgilSDKPFS
//
//  Created by <NAME> on 6/21/17.
//  Copyright © 2017 VirgilSecurity. All rights reserved.
//

import Foundation

class ServiceInfoEntry: NSObject, NSCoding {
    class KeyEntry: NSObject, NSCoding {
        private enum Keys: String {
            case keyName = "key_name"
            case date = "date"
        }
        
        let keyName: String
        let date: Date
        
        init(keyName: String, date: Date) {
            self.keyName = keyName
            self.date = date
            
            super.init()
        }
        
        func encode(with aCoder: NSCoder) {
            aCoder.encode(self.keyName, forKey: Keys.keyName.rawValue)
            aCoder.encode(self.date, forKey: Keys.date.rawValue)
        }
        
        convenience required init?(coder aDecoder: NSCoder) {
            guard let keyName = aDecoder.decodeObject(forKey: Keys.keyName.rawValue) as? String,
                let date = aDecoder.decodeObject(forKey: Keys.date.rawValue) as? Date else {
                    return nil
            }<commit_msg>Changed objc names for classes which implement NSCoding<commit_after>//
//  ServiceInfoEntry.swift
//  VirgilSDKPFS
//
//  Created by <NAME> on 6/21/17.
//  Copyright © 2017 VirgilSecurity. All rights reserved.
//

import Foundation

@objc(VSPServiceInfoEntry) class ServiceInfoEntry: NSObject, NSCoding {
    @objc(VSPServiceInfoEntryKeyEntry) class KeyEntry: NSObject, NSCoding {
        private enum Keys: String {
            case keyName = "key_name"
            case date = "date"
        }
        
        let keyName: String
        let date: Date
        
        init(keyName: String, date: Date) {
            self.keyName = keyName
            self.date = date
            
            super.init()
        }
        
        func encode(with aCoder: NSCoder) {
            aCoder.encode(self.keyName, forKey: Keys.keyName.rawValue)
            aCoder.encode(self.date, forKey: Keys.date.rawValue)
        }
        
        convenience required init?(coder aDecoder: NSCoder) {
            guard let keyName = aDecoder.decodeObject(forKey: Keys.keyName.rawValue) as? String,
                let date = aDecoder.decodeObject(forKey: Keys.date.rawValue) as? Date else {
                    return nil
            }
{'fraction_non_alphanumeric': 0.08943781942078365, 'fraction_numerical': 0.007666098807495741, 'mean_word_length': 1.7964285714285715, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2394169', 'n_tokens_mistral': 713, 'n_tokens_neox': 681, 'n_words': 171}