ANALISAR. CPP
No componente de provedor de exemplo, um exemplo de código do analisador de caminho do serviço de diretório está em Parse.cpp. O analisador de caminho é um componente-chave nos componentes do provedor de ADs. Ele verifica a validade sintática de um caminho de ADs passado para esse provedor. Se a sintaxe for válida, uma estrutura OBJECTINFO será construída, que contém uma versão componentizada do ADspath para esse objeto.
Lembre-se de que esta é apenas uma verificação de sintaxe. Em vez de casos especiais a cada nova iteração de caminho, toda a verificação de caminho deve estar em conformidade com as regras gramaticais estabelecidas pelo analisador.
A tabela a seguir lista as funções e os métodos implementados no Parse.cpp.
Item | Descrição |
---|---|
ADsObject | Analisa o ADspath passado para ele. Essa função segue as seguintes regras gramaticais: <ADsObject> -><ProviderName><SampleDSObject> |
ExemploDSObject | Analisa as seguintes regras gramaticais: <SampleDSObject> -> "\\" identificador> "\" <<Nome do caminho> |
ProviderName | Adiciona o nome do provedor sintaticamente correto, se não estiver lá. |
PathName | Analisa as seguintes regras gramaticais: <Pathname -<>Component> "\\" <Pathname>> OR <Nome do caminho> -><Component> |
Componente | Analisa as seguintes regras gramaticais: <Identificador> OU <Identificador> "=" <> |
CLexer::CLexer | Construtor padrão. |
CLexer::~CLexer | Destruidor padrão. |
CLexer::GetNextToken | Gerador de token. |
CLexer::NextChar | Recupera o próximo caractere único. |
CLexer::P ushBackToken | Faz backup até o início do último token. |
CLexer::P ushbackChar | Faz backup de um personagem. |
CLexer::IsKeyword | Verifica a lista de palavras-chave. Definido em Globals.h). |
AddComponent | Adiciona esse componente à matriz de componentes. |
AddProviderName | Adiciona um nome de provedor sintaticamente correto à estrutura OBJECTINFO . |
AddRootRDN | Adiciona o nome RDN (nome distinto relativo) de raiz sintaticamente correto à estrutura OBJECTINFO . |
SetType | Define o tipo do objeto. |
Tipo | Tipo de análise -> "usuário" | "grupo" e assim por diante. |