ExOsrsApi.Models.SkillEntry (ExOsrsApi v0.1.0) View Source
SkillEntry
Represents Highscore skill data (attack, defence, strength etc..) entry
Link to this section Summary
Functions
Check if ExOsrsApi.Models.SkillEntry
has no data from OSRS highscore API (if rank is too low OSRS api will return "-1,-1"
in level and rank fields)
Creates new %ExOsrsApi.Models.SkillEntry{}
from "CSV" like string seperated by commas ","
Link to this section Types
Specs
Link to this section Functions
Specs
Check if ExOsrsApi.Models.SkillEntry
has no data from OSRS highscore API (if rank is too low OSRS api will return "-1,-1"
in level and rank fields)
Examples:
iex(1)> data = %ExOsrsApi.Models.SkillEntry{
empty: true,
experience: nil,
level: nil,
rank: nil,
skill: :magic
}
iex(2)> ExOsrsApi.Models.SkillEntry.is_empty?(data)
true
iex(1)> {:ok, data} = ExOsrsApi.Models.SkillEntry.new_from_line(:attack, "4719223,2,102")
{:ok,
%ExOsrsApi.Models.SkillEntry{
empty: false,
experience: 102,
level: 2,
rank: 4719223,
skill: :attack
}}
iex(2)> ExOsrsApi.Models.SkillEntry.is_empty?(data)
false
Specs
new_from_line(atom(), String.t()) :: {:error, ExOsrsApi.Errors.Error.t()} | {:ok, t()}
Creates new %ExOsrsApi.Models.SkillEntry{}
from "CSV" like string seperated by commas ","
Examples:
iex> ExOsrsApi.Models.SkillEntry.new_from_line(:attack, "4719223,2,102")
{:ok,
%ExOsrsApi.Models.SkillEntry{
empty: false,
experience: 102,
level: 2,
rank: 4719223,
skill: :attack
}}
iex> ExOsrsApi.Models.SkillEntry.new_from_line(:defence, "2,102")
{:error, "Error parsing SkillEntry (skill: defence)"}
iex>ExOsrsApi.Models.SkillEntry.new_from_line(:defence, "invalid,input")
{:error, "Error parsing SkillEntry (skill: defence)"}
iex> ExOsrsApi.Models.SkillEntry.new_from_line(:magic, "-1,-1")
{:ok,
%ExOsrsApi.Models.SkillEntry{
empty: true,
experience: nil,
level: nil,
rank: nil,
skill: :magic
}}