<commit_before>//
//  Extended.swift
//  TraktKit
//
//  Created by <NAME> on 04.09.16.
//  Copyright © 2016 <NAME>. All rights reserved.
//

import Foundation

/**
 *  By default, all methods will return minimal info for movies, shows, episodes, people, and users.
 *  Minimal info is typiclly all you need to match locally cached items and includes the title, year, and ids.
 *  However, you can request different extended levels of information by adding more extended information to a request.
 */
public struct Extended: OptionSet, CustomStringConvertible {
  
  // MARK: - Private Extended Type
  
  private enum ExtendedType: Int, CustomStringConvertible {
    case min      = 1
    case images   = 2
    case full     = 4
    case episodes = 8
    
    static var allTypes: [ExtendedType] {
      return [.min, .images, .full, .episodes]
    }
    
    var description: String {
      switch self {
      case .min:
        return "min"
      case .images:
        return "images"
      case .full:
        return "full"
      case .episodes:
        return "episodes"
      }
    }
  }
  
  // MARK: - Options
  
  /// Default Returns enough info to match locally.
  public static let Min      = Extended(.min)
  
  /// Minimal info and all images.
  public static let Images   = Extended(.images)
  
  /// Complete info for an item.
  public static let Full     = Extended(.full)
  
  /// **Season Summary Only**: Returns all episodes for all seasons.
  /// **Note**: This returns a lot of data, so please only use this method if you need it all!
  public static let Episodes = Extended(.episodes)
  
  // MARK: - Properties
  
  public let rawValue: Int
  
  // MARK: - Init
  
  public init(rawValue: Int) {
    self.rawValue = rawValue
  }
  
  private init(_ extendedType: ExtendedType) {
    self.rawValue = extendedType.rawValue<commit_msg>options are now lowercase<commit_after>//
//  Extended.swift
//  TraktKit
//
//  Created by <NAME> on 04.09.16.
//  Copyright © 2016 <NAME>. All rights reserved.
//

import Foundation

/**
 *  By default, all methods will return minimal info for movies, shows, episodes, people, and users.
 *  Minimal info is typiclly all you need to match locally cached items and includes the title, year, and ids.
 *  However, you can request different extended levels of information by adding more extended information to a request.
 */
public struct Extended: OptionSet, CustomStringConvertible {
  
  // MARK: - Private Extended Type
  
  private enum ExtendedType: Int, CustomStringConvertible {
    case min      = 1
    case images   = 2
    case full     = 4
    case episodes = 8
    
    static var allTypes: [ExtendedType] {
      return [.min, .images, .full, .episodes]
    }
    
    var description: String {
      switch self {
      case .min:
        return "min"
      case .images:
        return "images"
      case .full:
        return "full"
      case .episodes:
        return "episodes"
      }
    }
  }
  
  // MARK: - Options
  
  /// Default Returns enough info to match locally.
  public static let min = Extended(.min)
  
  /// Minimal info and all images.
  public static let images = Extended(.images)
  
  /// Complete info for an item.
  public static let full = Extended(.full)
  
  /// **Season Summary Only**: Returns all episodes for all seasons.
  /// **Note**: This returns a lot of data, so please only use this method if you need it all!
  public static let episodes = Extended(.episodes)
  
  // MARK: - Properties
  
  public let rawValue: Int
  
  // MARK: - Init
  
  public init(rawValue: Int) {
    self.rawValue = rawValue
  }
  
  private init(_ extendedType: ExtendedType) {
    self.rawValue = extendedType.rawValue
{'fraction_non_alphanumeric': 0.09215844785772029, 'fraction_numerical': 0.00754513608191862, 'mean_word_length': 2.3471596032461677, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7283866', 'n_tokens_mistral': 1124, 'n_tokens_neox': 1061, 'n_words': 420}