diff --git a/components/style/font_metrics.rs b/components/style/font_metrics.rs index dac7a69ee29..417c7999845 100644 --- a/components/style/font_metrics.rs +++ b/components/style/font_metrics.rs @@ -2,6 +2,10 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +//! Access to font metrics from the style system. + +#![deny(missing_docs)] + use Atom; use app_units::Au; use euclid::Size2D; @@ -11,13 +15,19 @@ use std::fmt; /// value of certain CSS units like `ex`. #[derive(Debug, PartialEq, Clone)] pub struct FontMetrics { + /// The x-height of the font. pub x_height: Au, + /// The zero advance. pub zero_advance_measure: Size2D, } +/// The result for querying font metrics for a given font family. #[derive(Debug, PartialEq, Clone)] pub enum FontMetricsQueryResult { + /// The font is available, but we may or may not have found any font metrics + /// for it. Available(Option), + /// The font is not available. NotAvailable, } @@ -26,9 +36,8 @@ pub trait FontMetricsProvider: Send + Sync + fmt::Debug { /// Obtain the metrics for given font family. /// /// TODO: We could make this take the full list, I guess, and save a few - /// virtual calls. - /// - /// This is not too common in practice though. + /// virtual calls in the case we are repeatedly unable to find font metrics? + /// That is not too common in practice though. fn query(&self, _font_name: &Atom) -> FontMetricsQueryResult { FontMetricsQueryResult::NotAvailable }