Задать вопрос
syxme
@syxme

Как правильно описать кс грамматику к моему синтаксису?

Вот пример моего синтаксиса:
@style default {
    colors{
        baseColor:#00FF00;
        exColor:#00AA00;
    }
    dims{
        blockPadding:5dp
    }
}
@style dark:default {
    colors{
        baseColor:#0000FF;
    }

}

block {
    color:@colors.baseColor;
    padding:@dims.blockPadding;
}

newblock:block{
    width:100%;
    height:100%;
    padding:@colors.exColor;
}

Вот что я смог составить (EBNF):
<style>  ::= "@style" " " <word> <block>
<extend> ::= <word> ":" <word> 
<class>  ::= (<word> | <extend>) <block>
<block>  ::= "{" <assign>* "}"
<number> ::= <digit> | <number> <digit>

<assign> ::= <word> ":" <word> ";"
<word>	 ::= <symb> | <word> <symb>
<symb>   ::= ([0-9] | [a-z])+ 
<digit>  ::=  [0-9]

Правильно ли я всё описал ? Нужно ли что-то исправить ?
  • Вопрос задан
  • 76 просмотров
Подписаться 1 Сложный 1 комментарий
Помогут разобраться в теме Все курсы
  • OTUS
    iOS Developer
    12 месяцев
    Далее
  • AndroidSprint
    Попробуйте себя в роли разработчика за 10 дней
    1 неделя
    Далее
  • Stepik
    Парсинг на Python для начинающих
    2 недели
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Неправильно. Если пройтись вашей грамматикой по примеру, то практически во всех строках будут ошибки.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы