MessagePattern Classe

Definizione

Analizza e rappresenta i modelli MessageFormat di ICU.

[Android.Runtime.Register("android/icu/text/MessagePattern", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class MessagePattern : Java.Lang.Object, Android.Icu.Util.IFreezable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/icu/text/MessagePattern", ApiSince=24, DoNotGenerateAcw=true)>]
type MessagePattern = class
    inherit Object
    interface IFreezable
    interface ICloneable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
Ereditarietà
MessagePattern
Attributi
Implementazioni

Commenti

Analizza e rappresenta i modelli MessageFormat di ICU. Gestisce anche i modelli per ChoiceFormat, PluralFormat e SelectFormat. Usato nelle implementazioni di tali classi, nonché negli strumenti per la convalida dei messaggi, la conversione e la conversione del formato.

Il parser gestisce tutta la sintassi pertinente per identificare gli argomenti del messaggio. Sono inclusi gli argomenti "complessi" le cui stringhe di stile contengono sottostringhe del modello MessageFormat annidate. Per gli argomenti "simple" (senza sottostringhe del modello MessageFormat annidato), lo stile dell'argomento non viene analizzato ulteriormente.

Il parser gestisce argomenti di messaggio denominati e numerati e consente entrambi in un messaggio.

Dopo aver analizzato correttamente un criterio, scorrere i dati analizzati con countParts(), getPart() e i metodi correlati.

I dati rappresentano logicamente un albero di analisi, ma vengono archiviati e accessibili come elenco di "parti" per l'analisi rapida e semplice e per ridurre al minimo le allocazioni di oggetti. Gli argomenti e i messaggi annidati sono gestiti in modo ottimale tramite ricorsione. Per ogni _START "parte", #getLimitPartIndex(int) restituisce in modo efficiente l'indice del corrispondente _LIMIT "part".

Elenco di "parti":

message = MSG_START (SKIP_SYNTAX | INSERT_CHAR | REPLACE_NUMBER | argument)* MSG_LIMIT
            argument = noneArg | simpleArg | complexArg
            complexArg = choiceArg | pluralArg | selectArg

            noneArg = ARG_START.NONE (ARG_NAME | ARG_NUMBER) ARG_LIMIT.NONE
            simpleArg = ARG_START.SIMPLE (ARG_NAME | ARG_NUMBER) ARG_TYPE [ARG_STYLE] ARG_LIMIT.SIMPLE
            choiceArg = ARG_START.CHOICE (ARG_NAME | ARG_NUMBER) choiceStyle ARG_LIMIT.CHOICE
            pluralArg = ARG_START.PLURAL (ARG_NAME | ARG_NUMBER) pluralStyle ARG_LIMIT.PLURAL
            selectArg = ARG_START.SELECT (ARG_NAME | ARG_NUMBER) selectStyle ARG_LIMIT.SELECT

            choiceStyle = ((ARG_INT | ARG_DOUBLE) ARG_SELECTOR message)+
            pluralStyle = [ARG_INT | ARG_DOUBLE] (ARG_SELECTOR [ARG_INT | ARG_DOUBLE] message)+
            selectStyle = (ARG_SELECTOR message)+

<il testo di output ul><li>Literal non è rappresentato direttamente da "parti" ma accessibile tra parti di un messaggio, da una parte getLimit() alla parte successiva getIndex(). <li>ARG_START.CHOICE sta per una parte ARG_START con ArgType CHOICE. liIn choiceStyle, il ARG_SELECTOR ha il segno '<', '#' o minore di o uguale a (U+2264). <li>Nel pluralStyle, la prima parte numerica facoltativa ha il valore "offset:". La parte numerica facoltativa tra ogni coppia (ARG_SELECTOR, message) è il valore di un selettore di numeri espliciti come "=2", altrimenti il selettore è un identificatore non numerico. <li>La parte REPLACE_NUMBER può verificarsi solo in un sottoinsieme immediato del pluralStyle. </ul>

Questa classe non è destinata alla sottoclasse pubblica.

per android.icu.text.MessagePattern.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.

Costruttori

Nome Descrizione
MessagePattern()

Costruisce un MessagePattern vuoto con ApostropheMode predefinito.

MessagePattern(MessagePattern+ApostropheMode)

Analizza e rappresenta i modelli MessageFormat di ICU.

MessagePattern(String)

Costruisce un MessagePattern con ApostropheMode predefinito e analizza la stringa del modello MessageFormat.

Campi

Nome Descrizione
ArgNameNotNumber

Valore restituito da #validateArgumentName(String) per quando la stringa è un "identificatore di modello" valido ma non un numero.

ArgNameNotValid

Valore restituito da #validateArgumentName(String) per quando la stringa non è valida.

NoNumericValue

Valore speciale restituito da getNumericValue(Part) quando non viene definito alcun valore numerico per una parte.

Proprietà

Nome Descrizione
Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
Handle

Handle per l'istanza di Android sottostante.

(Ereditato da Object)
HasNamedArguments

Il modello analizzato ha argomenti denominati come {first_name}?

HasNumberedArguments

Il modello analizzato ha argomenti numerati come {2}?

IsFrozen

Determina se l'oggetto è bloccato (non modificabile) o meno.

JniIdentityHashCode

Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
JniPeerMembers

Analizza e rappresenta i modelli MessageFormat di ICU.

PatternString

Analizza e rappresenta i modelli MessageFormat di ICU.

PeerReference

Ottiene il riferimento all'oggetto JNI per questo peer Java.

(Ereditato da Object)
ThresholdClass

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)
ThresholdType

Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice.

(Ereditato da Object)

Metodi

Nome Descrizione
AutoQuoteApostropheDeep()

Restituisce una versione della stringa del pattern analizzato in cui ogni apostrofo ASCII viene raddoppiato (preceduto da escape) se non è già stato eseguito e, se non viene interpretato come sintassi tra virgolette.

Clear()

Cancella messagePattern.

ClearPatternAndSetApostropheMode(MessagePattern+ApostropheMode)

Analizza e rappresenta i modelli MessageFormat di ICU.

Clone()

Crea e restituisce una copia di questo oggetto.

CloneAsThawed()

Crea e restituisce una copia unfrozen di questo oggetto.

CountParts()

Restituisce il numero di "parti" create analizzando la stringa del pattern.

Dispose()

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
Dispose(Boolean)

Rilascia le risorse contenute in questo peer Java.

(Ereditato da Object)
Equals(Object)

Indica se un altro oggetto è "uguale a" questo.

(Ereditato da Object)
Freeze()

Blocca questo oggetto, rendendolo non modificabile e thread-safe.

GetApostropheMode()

Analizza e rappresenta i modelli MessageFormat di ICU.

GetHashCode()

Restituisce un valore di codice hash per l'oggetto .

(Ereditato da Object)
GetLimitPartIndex(Int32)

Restituisce l'indice di ARG|MSG_LIMIT parte corrispondente all'ARG|MSG_START all'inizio.

GetNumericValue(MessagePattern+Part)

Analizza e rappresenta i modelli MessageFormat di ICU.

GetPart(Int32)

Analizza e rappresenta i modelli MessageFormat di ICU.

GetPartType(Int32)

Analizza e rappresenta i modelli MessageFormat di ICU.

GetPatternIndex(Int32)

Restituisce l'indice del criterio specificato "part".

GetPluralOffset(Int32)

Restituisce il valore "offset:" di un argomento PluralFormat oppure 0 se non è specificato alcun valore.

GetSubstring(MessagePattern+Part)

Analizza e rappresenta i modelli MessageFormat di ICU.

JavaFinalize()

Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto .

(Ereditato da Object)
Notify()

Riattiva un singolo thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
NotifyAll()

Riattiva tutti i thread in attesa del monitor dell'oggetto.

(Ereditato da Object)
Parse(String)

Analizza una stringa di pattern MessageFormat.

ParseChoiceStyle(String)

Analizza una stringa di pattern ChoiceFormat.

ParsePluralStyle(String)

Analizza una stringa di pattern PluralFormat.

ParseSelectStyle(String)

Analizza una stringa di pattern SelectFormat.

PartSubstringMatches(MessagePattern+Part, String)

Analizza e rappresenta i modelli MessageFormat di ICU.

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
ToArray<T>()

Crea una matrice gestita da questo wrapper di matrice Java.

(Ereditato da Object)
ToString()

Restituisce una rappresentazione di stringa dell'oggetto .

(Ereditato da Object)
UnregisterFromRuntime()

Annulla la registrazione di questo Java peer dal runtime di interoperabilità.

(Ereditato da Object)
ValidateArgumentName(String)

Convalida e analizza un nome di argomento o una stringa di numeri di argomento.

Wait()

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>.

(Ereditato da Object)
Wait(Int64, Int32)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)
Wait(Int64)

Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IFreezable.CloneAsThawed()

Analizza e rappresenta i modelli MessageFormat di ICU.

IFreezable.Freeze()

Analizza e rappresenta i modelli MessageFormat di ICU.

IJavaPeerable.Disposed()

Notifica al runtime di interoperabilità che il peer gestito è stato eliminato.

(Ereditato da Object)
IJavaPeerable.DisposeUnlessReferenced()

Rilascia questo Java peer a meno che non venga conservato da un altro riferimento gestito.

(Ereditato da Object)
IJavaPeerable.Finalized()

Notifica al runtime di interoperabilità che il peer gestito è stato finalizzato.

(Ereditato da Object)
IJavaPeerable.JniManagedPeerState

Ottiene lo stato che descrive la relazione tra questo peer gestito e il relativo riferimento JNI.

(Ereditato da Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Imposta il codice hash dell'identità di interoperabilità per questo Java peer.

(Ereditato da Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Imposta lo stato peer gestito e JNI per questo peer Java.

(Ereditato da Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Imposta il riferimento all'oggetto JNI usato da questo peer gestito.

(Ereditato da Object)

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Analizza e rappresenta i modelli MessageFormat di ICU.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a