Compare commits
2 commits
430ecada41
...
f23c8d5c4c
Author | SHA1 | Date | |
---|---|---|---|
f23c8d5c4c | |||
e89a5331d3 |
11 changed files with 26 additions and 24 deletions
|
@ -175,7 +175,7 @@ pub fn builder_fn(_: TokenStream, item: TokenStream) -> TokenStream {
|
|||
|
||||
// Genera el método alter_...() con el código del método with_...().
|
||||
let fn_alter_doc = format!(
|
||||
"Equivale a invocar el método `{}()` cuando se aplica el patrón builder.",
|
||||
"Igual que [`{0}()`](Self::{0}), pero sin usar el patrón *builder*.",
|
||||
fn_with_name_str,
|
||||
);
|
||||
let fn_alter = quote! {
|
||||
|
|
|
@ -169,7 +169,7 @@ pub static CONFIG_VALUES: LazyLock<ConfigBuilder<DefaultState>> = LazyLock::new(
|
|||
/// ```rust,ignore
|
||||
/// include_config!(SETTINGS: Settings => [
|
||||
/// "ruta.clave" => valor,
|
||||
/// // …
|
||||
/// // ...
|
||||
/// ]);
|
||||
/// ```
|
||||
///
|
||||
|
|
|
@ -55,10 +55,10 @@ impl TypeInfo {
|
|||
fn partial(type_name: &'static str, start: isize, end: Option<isize>) -> &'static str {
|
||||
let maxlen = type_name.len();
|
||||
|
||||
// Localiza los límites de cada segmento a nivel 0 de `<…>`.
|
||||
// Localiza los límites de cada segmento a nivel 0 de `<...>`.
|
||||
let mut segments = Vec::new();
|
||||
let mut segment_start = 0; // Posición inicial del segmento actual.
|
||||
let mut angle_brackets = 0; // Profundidad dentro de '<…>'.
|
||||
let mut angle_brackets = 0; // Profundidad dentro de '<...>'.
|
||||
let mut previous_char = '\0'; // Se inicializa a carácter nulo, no hay aún carácter previo.
|
||||
|
||||
for (idx, c) in type_name.char_indices() {
|
||||
|
|
|
@ -85,7 +85,7 @@ impl<C: ComponentTrait> Typed<C> {
|
|||
|
||||
// *************************************************************************************************
|
||||
|
||||
/// Operaciones con un componente [`Child`] en una lista [`Children`].
|
||||
/// Operaciones con un componente hijo [`Child`] en una lista [`Children`].
|
||||
pub enum ChildOp {
|
||||
Add(Child),
|
||||
InsertAfterId(&'static str, Child),
|
||||
|
@ -96,7 +96,7 @@ pub enum ChildOp {
|
|||
Reset,
|
||||
}
|
||||
|
||||
/// Operaciones con un componente tipado [`Typed<C>`] en una lista [`Children`].
|
||||
/// Operaciones con un componente hijo tipado [`Typed<C>`] en una lista [`Children`].
|
||||
pub enum TypedOp<C: ComponentTrait> {
|
||||
Add(Typed<C>),
|
||||
InsertAfterId(&'static str, Typed<C>),
|
||||
|
@ -107,9 +107,9 @@ pub enum TypedOp<C: ComponentTrait> {
|
|||
Reset,
|
||||
}
|
||||
|
||||
/// Lista ordenada de los componentes hijo ([`Child`]) asociados a un componente padre.
|
||||
/// Lista ordenada de componentes hijo ([`Child`]) mantenida por un componente padre.
|
||||
///
|
||||
/// Esta colección permite añadir, modificar, renderizar y consultar componentes hijos en orden de
|
||||
/// Esta lista permite añadir, modificar, renderizar y consultar componentes hijo en orden de
|
||||
/// inserción, soportando operaciones avanzadas como inserción relativa o reemplazo por
|
||||
/// identificador.
|
||||
#[derive(Clone, Default)]
|
||||
|
@ -121,7 +121,7 @@ impl Children {
|
|||
Children::default()
|
||||
}
|
||||
|
||||
/// Crea una lista con un único hijo inicial.
|
||||
/// Crea una lista con un componente hijo inicial.
|
||||
pub fn with(child: Child) -> Self {
|
||||
Children::default().with_child(ChildOp::Add(child))
|
||||
}
|
||||
|
@ -165,7 +165,9 @@ impl Children {
|
|||
}
|
||||
}
|
||||
|
||||
/// Añade un hijo al final de la lista.
|
||||
/// Añade un componente hijo al final de la lista.
|
||||
///
|
||||
/// Es un atajo para `children.alter_child(ChildOp::Add(child))`.
|
||||
#[inline]
|
||||
pub fn add(&mut self, child: Child) -> &mut Self {
|
||||
self.0.push(child);
|
||||
|
|
|
@ -3,7 +3,7 @@ use crate::AutoDefault;
|
|||
|
||||
/// Un **Favicon** es un recurso gráfico que usa el navegador como icono asociado al sitio.
|
||||
///
|
||||
/// Es universalmente aceptado para mostrar el icono del sitio (`.ico`, `.png`, `.svg`, …) en
|
||||
/// Es universalmente aceptado para mostrar el icono del sitio (`.ico`, `.png`, `.svg`, ...) en
|
||||
/// pestañas, marcadores o accesos directos.
|
||||
///
|
||||
/// Este tipo permite construir de forma fluida las distintas variantes de un *favicon*, ya sea un
|
||||
|
|
|
@ -97,7 +97,7 @@ impl JavaScript {
|
|||
|
||||
/// Crea un **script embebido** directamente en el documento HTML.
|
||||
///
|
||||
/// Equivale a `<script>…</script>`. El parámetro `name` se usa como identificador interno del
|
||||
/// Equivale a `<script>...</script>`. El parámetro `name` se usa como identificador interno del
|
||||
/// *script*.
|
||||
pub fn inline(name: impl Into<String>, script: impl Into<String>) -> Self {
|
||||
JavaScript {
|
||||
|
|
|
@ -82,7 +82,7 @@ impl TargetMedia {
|
|||
pub struct StyleSheet {
|
||||
source : Source, // Fuente y modo de inclusión del CSS.
|
||||
version: String, // Versión del recurso para la caché del navegador.
|
||||
media : TargetMedia, // Medio objetivo para los estilos (`print`, `screen`, …).
|
||||
media : TargetMedia, // Medio objetivo para los estilos (`print`, `screen`, ...).
|
||||
weight : Weight, // Peso que determina el orden.
|
||||
}
|
||||
|
||||
|
@ -99,7 +99,7 @@ impl StyleSheet {
|
|||
|
||||
/// Crea una hoja de estilos embebida directamente en el documento HTML.
|
||||
///
|
||||
/// Equivale a `<style>…</style>`. El parámetro `name` se usa como identificador interno del
|
||||
/// Equivale a `<style>...</style>`. El parámetro `name` se usa como identificador interno del
|
||||
/// recurso.
|
||||
pub fn inline(name: impl Into<String>, styles: impl Into<String>) -> Self {
|
||||
StyleSheet {
|
||||
|
|
|
@ -33,8 +33,8 @@
|
|||
html_favicon_url = "https://git.cillero.es/manuelcillero/pagetop/raw/branch/main/static/favicon.ico"
|
||||
)]
|
||||
|
||||
// Alias para que las rutas absolutas `::pagetop::…` generadas por las macros funcionen en el propio
|
||||
// *crate*, en *crates* externos y en *doctests*.
|
||||
// Alias para que las rutas absolutas `::pagetop::...` generadas por las macros funcionen en el
|
||||
// propio *crate*, en *crates* externos y en *doctests*.
|
||||
extern crate self as pagetop;
|
||||
|
||||
use std::collections::HashMap;
|
||||
|
|
|
@ -119,13 +119,13 @@ static LANGUAGES: LazyLock<HashMap<&str, (LanguageIdentifier, &str)>> = LazyLock
|
|||
]
|
||||
});
|
||||
|
||||
// Identificador del idioma de **respaldo** (predefinido a `en-US`).
|
||||
// Identificador de idioma de **respaldo** (predefinido a `en-US`).
|
||||
//
|
||||
// Se usa cuando el valor del identificador de idioma en las traducciones no corresponde con ningún
|
||||
// idioma soportado por la aplicación.
|
||||
static FALLBACK_LANGID: LazyLock<LanguageIdentifier> = LazyLock::new(|| langid!("en-US"));
|
||||
|
||||
// Identificador del idioma **por defecto** para la aplicación.
|
||||
// Identificador de idioma **por defecto** para la aplicación.
|
||||
//
|
||||
// Se resuelve a partir de [`global::SETTINGS.app.language`](global::SETTINGS). Si el identificador
|
||||
// de idioma no es válido o no está disponible entonces resuelve como [`FALLBACK_LANGID`].
|
||||
|
@ -177,13 +177,13 @@ pub(crate) static DEFAULT_LANGID: LazyLock<&LanguageIdentifier> =
|
|||
/// ```
|
||||
#[derive(Clone, Debug, Eq, PartialEq)]
|
||||
pub enum LangMatch {
|
||||
/// Cuando el identificador del idioma es una cadena vacía.
|
||||
/// Cuando el identificador de idioma es una cadena vacía.
|
||||
Unspecified,
|
||||
/// Si encuentra un [`LanguageIdentifier`] en la lista de idiomas soportados por `PageTop` que
|
||||
/// coincide exactamente con el identificador del idioma (p.ej. "es-ES"), o con el identificador
|
||||
/// coincide exactamente con el identificador de idioma (p.ej. "es-ES"), o con el identificador
|
||||
/// del idioma base (p.ej. "es").
|
||||
Found(&'static LanguageIdentifier),
|
||||
/// Si el identificador del idioma no está entre los soportados por `PageTop`.
|
||||
/// Si el identificador de idioma no está entre los soportados por `PageTop`.
|
||||
Unsupported(String),
|
||||
}
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ impl Redirect {
|
|||
/// Redirección **permanente**. Código de estado **308**. Mantiene método y cuerpo sin cambios.
|
||||
///
|
||||
/// Indicada para reorganizaciones de un sitio o aplicación web en las que también existen
|
||||
/// métodos distintos de GET (POST, PUT, …) que no deben degradarse a GET.
|
||||
/// métodos distintos de GET (POST, PUT, ...) que no deben degradarse a GET.
|
||||
#[must_use]
|
||||
pub fn permanent(redirect_to_url: &str) -> HttpResponse {
|
||||
HttpResponse::PermanentRedirect()
|
||||
|
@ -55,7 +55,7 @@ impl Redirect {
|
|||
/// mantiene tal cual. Otros métodos pueden degradarse a GET.
|
||||
///
|
||||
/// Útil cuando un recurso está fuera de servicio de forma imprevista (mantenimiento breve,
|
||||
/// sobrecarga, …).
|
||||
/// sobrecarga, ...).
|
||||
#[must_use]
|
||||
pub fn found(redirect_to_url: &str) -> HttpResponse {
|
||||
HttpResponse::Found()
|
||||
|
|
|
@ -44,7 +44,7 @@ mod windows {
|
|||
async fn ok_absolute_dir() -> io::Result<()> {
|
||||
let _app = service::test::init_service(Application::new().test()).await;
|
||||
|
||||
// C:\Users\…\Temp\…
|
||||
// C:\Users\...\Temp\...
|
||||
let td = TempDir::new()?;
|
||||
let root = td.path();
|
||||
let sub = root.join("sub");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue