Лекс и Як в PHP [закрыто]

Вот ответ user945711 , настроенный для NSView в OS X. Помимо NSView, не имеющего свойства .center, кадр NSView не изменяется (вероятно, потому, что NSViews не имеют CALayer по умолчанию ), но исходное состояние CALayer изменяется при изменении привязки.

func setAnchorPoint(anchorPoint: NSPoint, view: NSView) {
    guard let layer = view.layer else { return }

    let oldOrigin = layer.frame.origin
    layer.anchorPoint = anchorPoint
    let newOrigin = layer.frame.origin

    let transition = NSMakePoint(newOrigin.x - oldOrigin.x, newOrigin.y - oldOrigin.y)
    layer.frame.origin = NSMakePoint(layer.frame.origin.x - transition.x, layer.frame.origin.y - transition.y)
}

30
задан John Carter 19 January 2010 в 12:15
поделиться

2 ответа

Есть JlexPhp: https://github.com/wez/jlexphp/blob/master/jlex.php

Я не использовал его, но есть это: http://pear.php.net/package/php_parsergenerator , который создает анализатор PHP из лимона грамматики. Проект кажется неактивным, хотя.

Я также нашел этот проект: http://code.google.com/p/antlrphpruntime/ , который использует ANTLR . Снова неактивно, хотя.

8
ответ дан 28 November 2019 в 00:30
поделиться

было для некоторого времени искать такого рода вещей. После нахождения этого поста я попробовал Antlr PHP Runtime. Я могу сообщить, что он далеко не закончен. В сгенерированном коде есть несколько ошибок, где оригинальные классы выполнения Java не были должным образом переведены на PHP (вложенные декларации класса, используя '.' Вместо «.» При попытке доступа к оператору методов класса).

Сама рамок ANTLR довольно мощная (не может свидетельствовать о повышении эффективности сгенерированного кода). Особенно графический инструмент ANTLRWORKS позволяет легко создавать и отладки грамматики. Оно слишком плохо о версии PHP. Можно катиться, хотя. Лучшим решением может быть, чтобы проанализировать генерируемый класс времени выполнения ANTLR, выяснить, как это работает, и придумать легкий вес менее важной версии.

1
ответ дан 28 November 2019 в 00:30
поделиться
Другие вопросы по тегам:

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