У меня есть script с методом factory, который хотел бы вернуть другую реализацию некоторого класса в зависимости от того, выполняется ли script из JRuby или Ruby. У кого-нибудь есть идеи о том, как я могу отличить это от моего script?
Некоторые первоначальные мысли, которые у меня были, были:
-
Попытка "включить Java" и вернуться к реализации Ruby, если она терпит неудачу. Этот метод не работает. Ruby достаточно умный, чтобы ошибиться, независимо от моего начала/спасения/конца.
-
Сделайте что-то глупое с идентификаторами процесса. Я бы предпочел избежать этого, так как он всегда выглядит как хак.