Domanda

Quando si invia un comando AT è normalmente terminato da \ r \ n, ma, in realtà, questi sono davvero due 'registrare variabili' S3 e S4.

Per impostazione predefinita S3 == '\ r' e S4 == '\ n', ma l'utente può cambiare queste in fase di esecuzione con il comando ATSx =

Come posso gestire questo nel mio Antlr lexer / parser?

Ogni comando ha la forma AT [parametri] S3S4, come posso gestire che, se l'utente cambia il valore di S3 o S4?

Grazie in anticipo per qualsiasi aiuto ...

È stato utile?

Soluzione

No, non non c'è alcuna possibilità di cambiare dinamicamente parser-regole lexer- o per quanto ne so. Naturalmente, ci sono work-around possibile, come ricreare il lexer / parser sulla modifica delle variabili di registro, ma non sarà abbastanza, immagino ...


Modifica

  

ha scritto mawg

     

ricreare l'lexr & poarser (beh, lexer solo, immagino) -? Potrebbe leaborate su quel

Riscrivere il file di grammatica originale (solo le regole lexer, come si parla correttamente) e ricompilata al volo. Vedere: http://java.sun.com/ JavaSE / 6 / docs / api / javax / tools / JavaCompiler.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top