A Biblioteca Parser Parsnip

A biblioteca Parsnip Parser permite que você construa analisadores complexos de um rico conjunto de primitivos analisadores.
Baixe Agora

A Biblioteca Parser Parsnip Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • LGPL
  • Preço:
  • FREE
  • Nome do editor:
  • Alex Rubinsteyn
  • Site do editor:

A Biblioteca Parser Parsnip Tag


A Biblioteca Parser Parsnip Descrição

A Biblioteca Parsnip Parser permite que você construa analisadores complexos de um rico conjunto de primitivos analisadores. A Biblioteca Parsnip Parser permite que você construa analisadores complexos de um rico conjunto de primitivos analisadores. Este método de construção de parser é inspirado pela Parsec e outras bibliotecas combinador analisador para Haskell e ML. A estratégia de parser padrão da Parsnip é a forma de análise de pacotes, aumentada para permitir a recursão à esquerda dentro de um analisador. A recurso esquerda é permitida, o conjunto de linguagens Parsnip pode reconhecer pode ser (e provavelmente é) um supersete dos reconhecidos por gramáticas de expressão analisadoras . A parsing de Baunilla PackRat está disponível como uma opção de configuração.Function reference (CHAR C) Charparser Retorna um charparser que corresponde a caractere C e retorna como uma string.str (string s) stringparser retorna Um stringparser que corresponde à sequência de caracteres de entrada para string s e retornar srange (char l, char u) charrangeparser retorna um charrangeparser que só é bem-sucedido se o caractere de entrada estiver dentro do intervalo .oneof (string s ) OneOfparser retorna um oneofparser que corresponde a um caractere de entrada para qualquer caractere na string s. Retorna o personagem correspondido em uma string.seq (analisador p1, analisador p2) seqtupleparser cria um analisador de sequência: Se ambos os analisadores tiverem sucesso, devolva seus resultados Em uma tupla, falhe de outra forma. A taquigrafia para este analisador é: P1>> p2 seq_vec (analisador p1, analisador p2) seqvecparser cria um analisador de sequência de vetor: Se ambos analisores Sucesso, devolva seus resultados em um vetor, falha de outra forma. Vetores, ao contrário das tuplas, podem ser de comprimento arbitrário, mas exigem que os analisadores sejam de um tipo de entrada e saída homogêneo. A taquigrafia para este analisador é: P1 P2 Concat (parser p1, analisador p2) concatparser cria um parser concat: analisa em sequência, mas concatena os resultados em vez de tublá-los. A taquigrafia para este analisador é: P1 + P2. Escolha (analisador p1, analisador p2) ChoiceParser Parser Choice: retorna o primeiro de seus dois paramétricos de parser a ter sucesso, falha de outra forma. Backtracks no fluxo de entrada para o segundo analisador. A taquigrafia para este analisador é: P1 | p2. não (analiser p) nottarser cria um nottarser que é bem sucedido se p falhar e consumir nenhum input.call0 (analisador p, R (* fn) (vácuo)) callarser0 cria um callarser que chama de fn se a parse de P é bem sucedida. call1 (analisador p, r (* fn) (t)) callarser1 cria um callarser que chama de fn com os resultados da parse.call2 (analisador > p, r (* fn) (t1, t2)) callarser2 cria um callarser que descompacta a 2-tupla que p retorna e passa os componentes como argumentos para fn.call3 (parser > p, r (* fn) (t1, t2, t3)) CallParser3 cria um Callparser que descompacta a 3-tupla que P retorna e passa os componentes como argumentos para fn.many (analisador p, int min = 0, int max = int_max) Manyparser O Manyparser analisa repetidamente p até que o máximo seja alcançado ou p false. Se o número de parsas for menor que min, o Manyparser falhará. Cada vez que P é analisada com sucesso, o resultado é passado para um acumulador do tipo AC. Se o Manyparser for bem-sucedido, ele retornará os dados acumulados de seu objeto ACC. Muitos1 (analisador p, int max = int_max) Manyparser gera um maniparpar que requer pelo menos uma análise de P para ter sucesso.


A Biblioteca Parser Parsnip Software Relacionado

Pawpaw.

Pawpaw é uma linguagem semelhante ao exceto que permite o desenvolvimento de cima para baixo. ...

169

Download

Avango.

A Avango é uma estrutura orientada a objetos para o desenvolvimento de aplicativos VE distribuídos e interativos. ...

230

Download

SCON ERLANG.

SCONS ERLANG é um add on para skons, uma substituição de fazer / autotools, para compilar projetos de Erlang. ...

466

Download

Costelas.

Ribs é um poderoso aplicativo de layout Java Web Start com uma paleta completa de todos os controles e componentes comuns de balanço. ...

81

Download