PAR edizione Standard. CPP
Nel componente del provider di esempio, un esempio di codice del parser del percorso del servizio directory si trova in Parse.cpp. Il parser di percorso è un componente chiave nei componenti del provider ADS. Verifica la validità sintattica di un percorso ADs passato a questo provider. Se la sintassi è valida, viene costruita una struttura OBJECTINFO che contiene una versione componente del percorso ADspath per questo oggetto.
Tenere presente che si tratta solo di una verifica della sintassi. Invece che ogni nuova iterazione del percorso deve essere conforme alle regole grammaticali stabilite dal parser.
Nella tabella seguente sono elencate le funzioni e i metodi implementati in Parse.cpp.
Articolo | Descrizione |
---|---|
ADsObject | Analizza il percorso ADspath passato. Questa funzione segue le regole grammaticali seguenti: <ADsObject> -><ProviderName><SampleDSObject> |
SampleDSObject | Analizza le regole di grammatica seguenti: <SampleDSObject> -> Identificatore> "\\" <Pathname "\" <> |
ProviderName | Aggiunge nel nome del provider sintatticamente corretto, se non presente. |
PathName | Analizza le regole grammaticali seguenti: <Pathname -><Component> "\\" <Pathname>> OR <Pathname> -><Component> |
Componente | Analizza le regole grammaticali seguenti: <Identificatore> OR <Identificatore> "=" <> |
CLexer::CLexer | Costruttore standard. |
CLexer::~CLexer | Distruttore standard. |
CLexer::GetNextToken | Tokenizer. |
CLexer::NextChar | Recupera il singolo carattere successivo. |
CLexer::P ushBackToken | Esegue il backup all'inizio dell'ultimo token. |
CLexer::P ushbackChar | Esegue il backup di un carattere. |
CLexer::IsKeyword | Verifica l'elenco di parole chiave. Definito in Globals.h). |
Addcomponent | Aggiunge questo componente alla matrice di componenti. |
AddProviderName | Aggiunge un nome del provider sintatticamente corretto alla struttura OBJECTINFO . |
AddRootRDN | Aggiunge il nome RDN (Root Distinguished Name) sintatticamente corretto alla struttura OBJECTINFO . |
SetType | Imposta il tipo dell'oggetto . |
Type | Parses Type -> "user" | "gruppo" e così via. |