<commit_before>/* 
 * Copyright (C) 2015-2016 <NAME>
 * All rights reserved.
 *
 * This software may be modified and distributed under the terms
 * of the BSD license.  See the LICENSE file for details.
 */
package api.web.gw2.mapping.v2.characters;

import api.web.gw2.mapping.core.DurationValue;
import api.web.gw2.mapping.core.IdValue;
import api.web.gw2.mapping.core.LevelValue;
import api.web.gw2.mapping.core.ListValue;
import api.web.gw2.mapping.core.MapValue;
import api.web.gw2.mapping.core.OptionalValue;
import api.web.gw2.mapping.core.QuantityValue;
import api.web.gw2.mapping.core.SetValue;
import api.web.gw2.mapping.v2.APIv2;
import api.web.gw2.mapping.v2.characters.inventory.InventoryBag;
import api.web.gw2.mapping.v2.characters.equipment.Equipment;
import java.time.Duration;
import java.time.ZonedDateTime;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;

/**
 * Defines a character.
 * @author <NAME>
 */
@APIv2(endpoint = "v2/characters", requiresAuthentication = true, scope = "characters") // NOI18N.
public interface Character {

    /**
     * Gets the name of this character.
     * @return A {@code String}, never {@code null}.
     */
    String getName();

    /**
     * Gets the race of this character.
     * @return A {@code CharacterRace} instance, never {@code null}.
     */
    CharacterRace getRace();

    /**
     * Gets the profession of this character.
     * @return A {@code CharacterProfession} instance, never {@code null}.
     */
    CharacterProfession getProfession();

    /**
     * Gets the gender of this character.
     * @return A {@code CharacterGender} instance, never {@code null}.
     */
    CharacterGender getGender();

    /**
     * Gets the level of this character.
     * @return An {@code int} &ge; 1 and &le; 80.
     */
    @LevelValue
    int getLevel();

    /**
     * Gets the id of the guild of this character.
     * @return An {@code Optional<String>} instance, never {@code null}.
     */
    @IdValue
    @OptionalValue
    Optional<String> getGuild();

    /**
     * Gets the creation date of this character.
     * @return A {@code ZonedDateTime} instance, never {@code null}.
     */
    ZonedDateTime getCreated();

    /**
     * Gets the age of this character (the amount of second the character was played).
     * @return A {@code long}.
     */
    @DurationValue
    Duration getAge();

    /**
     * Gets the number of deaths of this character.
     * @return An {@code in}.
     */
    @QuantityValue
    int getDeaths();

    /**
     * Gets the equipment of this character.
     * @return An {@code Optional<List<Equipment>>} instance, never {@code null}:
     * <br>If present, the list is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#BUILDS
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#INVENTORIES
     */
    @OptionalValue
    @ListValue
    Optional<List<Equipment>> getEquipment();

    /**
     * Gets the inventory bags of this character.
     * @return An {@code Optional<List<Bag>>} instance, never {@code null}:
     * <br>If present, the list is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#INVENTORIES
     */
    @OptionalValue
    @ListValue
    Optional<List<InventoryBag>> getBags();

    /**
     * Gets the crafting disciplines of this character.
     * @return An {@code Optional<Set<CharacterCrafting>>} instance, never {@code null}:
     * <br>If present, the set is non-modifiable and may be empty.
     */
    @OptionalValue
    @SetValue
    Optional<Set<CharacterCrafting>> getCrafting();

    /**
     * Gets the specialization of this character.
     * @return An {@code Optional<Map<CharacterGameType, CharacterSpecialization>>} instance, never {@code null}:
     * <br>If present, the map is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#BUILDS
     */
    @OptionalValue
    @MapValue
    Optional<Map<CharacterGameType, CharacterSpecialization>> getSpecialisations();

    /**
     * Gets the recipes known to this character.
     * @return An {@code Optional<Set<Integer>>} instance, never {@code null}:
     * <br>If present, the set is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#INVENTORIES
     */
    @OptionalValue
    @SetValue
    @IdValue
    Optional<Set<Integer>> getRecipes();
}<commit_msg>Fixed bad type for the specializations field.<commit_after>/* 
 * Copyright (C) 2015-2016 <NAME>
 * All rights reserved.
 *
 * This software may be modified and distributed under the terms
 * of the BSD license.  See the LICENSE file for details.
 */
package api.web.gw2.mapping.v2.characters;

import api.web.gw2.mapping.core.DurationValue;
import api.web.gw2.mapping.core.IdValue;
import api.web.gw2.mapping.core.LevelValue;
import api.web.gw2.mapping.core.ListValue;
import api.web.gw2.mapping.core.MapValue;
import api.web.gw2.mapping.core.OptionalValue;
import api.web.gw2.mapping.core.QuantityValue;
import api.web.gw2.mapping.core.SetValue;
import api.web.gw2.mapping.v2.APIv2;
import api.web.gw2.mapping.v2.characters.inventory.InventoryBag;
import api.web.gw2.mapping.v2.characters.equipment.Equipment;
import java.time.Duration;
import java.time.ZonedDateTime;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;

/**
 * Defines a character.
 * @author <NAME>
 */
@APIv2(endpoint = "v2/characters", requiresAuthentication = true, scope = "characters") // NOI18N.
public interface Character {

    /**
     * Gets the name of this character.
     * @return A {@code String}, never {@code null}.
     */
    String getName();

    /**
     * Gets the race of this character.
     * @return A {@code CharacterRace} instance, never {@code null}.
     */
    CharacterRace getRace();

    /**
     * Gets the profession of this character.
     * @return A {@code CharacterProfession} instance, never {@code null}.
     */
    CharacterProfession getProfession();

    /**
     * Gets the gender of this character.
     * @return A {@code CharacterGender} instance, never {@code null}.
     */
    CharacterGender getGender();

    /**
     * Gets the level of this character.
     * @return An {@code int} &ge; 1 and &le; 80.
     */
    @LevelValue
    int getLevel();

    /**
     * Gets the id of the guild of this character.
     * @return An {@code Optional<String>} instance, never {@code null}.
     */
    @IdValue
    @OptionalValue
    Optional<String> getGuild();

    /**
     * Gets the creation date of this character.
     * @return A {@code ZonedDateTime} instance, never {@code null}.
     */
    ZonedDateTime getCreated();

    /**
     * Gets the age of this character (the amount of second the character was played).
     * @return A {@code long}.
     */
    @DurationValue
    Duration getAge();

    /**
     * Gets the number of deaths of this character.
     * @return An {@code in}.
     */
    @QuantityValue
    int getDeaths();

    /**
     * Gets the equipment of this character.
     * @return An {@code Optional<List<Equipment>>} instance, never {@code null}:
     * <br>If present, the list is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#BUILDS
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#INVENTORIES
     */
    @OptionalValue
    @ListValue
    Optional<List<Equipment>> getEquipment();

    /**
     * Gets the inventory bags of this character.
     * @return An {@code Optional<List<Bag>>} instance, never {@code null}:
     * <br>If present, the list is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#INVENTORIES
     */
    @OptionalValue
    @ListValue
    Optional<List<InventoryBag>> getBags();

    /**
     * Gets the crafting disciplines of this character.
     * @return An {@code Optional<Set<CharacterCrafting>>} instance, never {@code null}:
     * <br>If present, the set is non-modifiable and may be empty.
     */
    @OptionalValue
    @SetValue
    Optional<Set<CharacterCrafting>> getCrafting();

    /**
     * Gets the specialization of this character.
     * @return An {@code Optional<Map<CharacterGameType, Set<CharacterSpecialization>>>} instance, never {@code null}:
     * <br>If present, the map is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#BUILDS
     */
    @OptionalValue
    @MapValue
    @SetValue
    Optional<Map<CharacterGameType, Set<CharacterSpecialization>>> getSpecialisations();

    /**
     * Gets the recipes known to this character.
     * @return An {@code Optional<Set<Integer>>} instance, never {@code null}:
     * <br>If present, the set is non-modifiable and may be empty.
     * @see api.web.gw2.mapping.v2.tokeninfo.TokenInfoPermission#INVENTORIES
     */
    @OptionalValue
    @SetValue
    @IdValue
    Optional<Set<Integer>> getRecipes();
}
{'fraction_non_alphanumeric': 0.12276834912938064, 'fraction_numerical': 0.009257218426272867, 'mean_word_length': 3.0495314591700136, 'pattern_counts': {'":': 0, '<': 63, '<?xml version=': 0, '>': 63, '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': '974754', 'n_tokens_mistral': 2857, 'n_tokens_neox': 2755, 'n_words': 787}