pub struct Info { /* private fields */ }
Expand description
A VCF header information record (INFO
).
Implementations
sourceimpl Info
impl Info
sourcepub fn try_from_record_file_format(
record: Record,
file_format: FileFormat
) -> Result<Self, TryFromRecordError>
pub fn try_from_record_file_format(
record: Record,
file_format: FileFormat
) -> Result<Self, TryFromRecordError>
Converts a generic VCF header record to a VCF header info record.
Examples
use noodles_vcf::header::{
info::{Key as InfoKey, Type},
record::{Key as RecordKey, Value},
FileFormat, Info, Number, Record,
};
let record = Record::new(
RecordKey::Info,
Value::Struct(vec![
(String::from("ID"), String::from("NS")),
(String::from("Number"), String::from("1")),
(String::from("Type"), String::from("Integer")),
(
String::from("Description"),
String::from("Number of samples with data"),
),
]),
);
assert_eq!(
Info::try_from_record_file_format(record, FileFormat::new(4, 3)),
Ok(Info::new(
InfoKey::SamplesWithDataCount,
Number::Count(1),
Type::Integer,
String::from("Number of samples with data"),
))
);
sourcepub fn new(id: Key, number: Number, ty: Type, description: String) -> Self
pub fn new(id: Key, number: Number, ty: Type, description: String) -> Self
Creates a VCF header information record.
Examples
use noodles_vcf::header::{info::{Key, Type}, Info, Number};
let info = Info::new(
Key::SamplesWithDataCount,
Number::Count(1),
Type::Integer,
String::from("Number of samples with data"),
);
sourcepub fn id(&self) -> &Key
pub fn id(&self) -> &Key
Returns the information field key.
Examples
use noodles_vcf::header::{info::Key, Info};
let info = Info::from(Key::SamplesWithDataCount);
assert_eq!(info.id(), &Key::SamplesWithDataCount);
sourcepub fn number(&self) -> Number
pub fn number(&self) -> Number
Returns the cardinality of the information field value.
Examples
use noodles_vcf::header::{info::Key, Info, Number};
let info = Info::from(Key::SamplesWithDataCount);
assert_eq!(info.number(), Number::Count(1));
sourcepub fn ty(&self) -> Type
pub fn ty(&self) -> Type
Returns the type of the information field value.
Examples
use noodles_vcf::header::{info::{Key, Type}, Info};
let info = Info::from(Key::SamplesWithDataCount);
assert_eq!(info.ty(), Type::Integer);
sourcepub fn description(&self) -> &str
pub fn description(&self) -> &str
Returns the description of the information field.
Examples
use noodles_vcf::header::{info::Key, Info};
let info = Info::from(Key::SamplesWithDataCount);
assert_eq!(info.description(), "Number of samples with data");
sourcepub fn idx(&self) -> Option<usize>
pub fn idx(&self) -> Option<usize>
Returns the index of the ID in the dictionary of strings.
This is typically used in BCF.
Examples
use noodles_vcf::header::{info::Key, Info};
let info = Info::from(Key::SamplesWithDataCount);
assert!(info.idx().is_none());
sourcepub fn fields(&self) -> &IndexMap<String, String>
pub fn fields(&self) -> &IndexMap<String, String>
Returns the extra fields in the record.
This includes fields other than ID
, Number
, Type
, Description
, and IDX
.
Examples
use noodles_vcf::header::{info::Key, Info};
let info = Info::from(Key::SamplesWithDataCount);
assert!(info.fields().is_empty());
Trait Implementations
impl Eq for Info
impl StructuralEq for Info
impl StructuralPartialEq for Info
Auto Trait Implementations
impl RefUnwindSafe for Info
impl Send for Info
impl Sync for Info
impl Unpin for Info
impl UnwindSafe for Info
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more