Как заставить ParseKit распознавать символы новой строки?

Я пытаюсь заставить Toksizer ParseKit распознавать символы новой строки и никаких других пробельных символов.

Кроме того, примеры показывают, как заставить его распознавать комментарии, начинающиеся с хеша, но созданные функции, кажется, применяются только к отдельным символам. Я хотел бы, чтобы PK распознал комментарии, которые начинаются с двух черточек ('-') и заканчиваются символом новой строки.

1 ответ

Решение

Разработчик ParseKit здесь.

Я не уверен, что понимаю вопрос, но если вы ищете способ сделать PKTokenizer признать -- как однострочный маркер комментария (как в AppleScript), вот оно:

PKTokenizer *t = [PKTokenizer tokenizerWithString:str];

// make sure `--` is recognized as a single multi-char token
[t.symbolState add:@"--"];

// designate `--` as a single-line comment marker
[t.commentState addSingleLineStartMaker:@"--"];

// make sure `commentState` handles `-` chars first (to check for comments)
[t setTokenizerState:t.commentState from:'-' to:'-'];

Это объясняется более подробно в документации Tokenizer.

Другие вопросы по тегам