ПРЕОБРАЗОВАНИЕ ИСХОДНОГО КОДА ЯЗЫКА ПРОГРАММИРОВАНИЯ

1. Постоянный машиночитаемый носитель данных, хранящий инструкции программы, которые в ходе выполнения на компьютерном устройстве заставляют компьютерное устройство выполнять:
получение, с помощью средства преобразования кода, команды для трансляции исходного кода с первого языка высокого уровня на второй язык высокого уровня, отличный от первого языка высокого уровня;
получение доступа, с помощью средства преобразования кода, к исходному коду на первом языке высокого уровня;
анализ, с помощью средства преобразования кода, исходного кода на первом языке высокого уровня;
в случае идентификации производного класса в исходном коде на первом языке высокого уровня и определения, что производный класс включает в себя более одного базового класса:
создание отдельных интерфейсов на втором языке высокого уровня, которые соответствуют каждому базовому классу для более чем одного базового класса на первом языке высокого уровня;
создание нового класса на втором языке высокого уровня, который соответствует производному классу на первом языке высокого уровня, причем новый класс реализует отдельные интерфейсы.
2. Постоянный машиночитаемый носитель данных по п. 1, в котором создание отдельных интерфейсов и нового класса является дальнейшим результатом определения того, что только один базовый класс производного класса включает в себя поля.
3. Постоянный машиночитаемый носитель данных по п. 1, где в случае идентификации производного класса в исходном коде на первом языке высокого уровня, который включает в себя более одного базового класса, и определения, что только один базовый класс для производного класса включает поля, инструкции программы выполнены с возможностью выполнения для создания нового класса на втором языке высокого уровня, который соответствует только одному базовому классу, который включает поле, причем новый класс создан для включения указанных полей;
создания отдельных интерфейсов на втором языке высокого уровня, которые соответствуют каждому базовому классу для более чем одного базового класса, отличного от единственного базового класса на первом языке высокого уровня.
4. Постоянный машиночитаемый носитель данных по п. 3, в котором инструкции программы выполнены с возможностью дальнейшего выполнения для создания вложенного класса внутри интерфейса из отдельных интерфейсов, причем вложенный класс включает одно или несколько полей, присутствующих в классе на первом языке программирования высокого уровня.
5. Постоянный машиночитаемый носитель данных, хранящий инструкции программы, которые в ходе выполнения на компьютерном устройстве заставляют компьютерное устройство выполнять:
получение, с помощью средства преобразования кода, команды для трансляции исходного кода с первого языка высокого уровня на второй язык высокого уровня, отличный от первого языка высокого уровня;
получение доступа с помощью средства преобразования кода, к исходному коду на первом языке высокого уровня;
анализ с помощью средства преобразования кода, исходного кода на первом языке высокого уровня;
в случае идентификации сущности в исходном коде на первом языке высокого уровня, которая включает в себя отдельные единицы трансляции:
создание первого нового класса на втором языке высокого уровня, который включает присутствующие в сущности вложенные перечислимые типы, в случае определения, что сущность содержит перечислимые типы;
создание второго нового класса на втором языке высокого уровня, который включает присутствующие в сущности вложенные классы, в случае определения, что сущность содержит вложенные классы;
создание третьего нового класса на втором языке высокого уровня для каждой единицы трансляции, при этом методы, реализованные в единицах трансляции, реализованы в каждом новом классе на втором языке высокого уровня, созданном для единиц трансляции;
создание четвертого нового класса на втором языке высокого уровня, который соответствует сущности, причем методы оригинальной сущности реализованы в четвертом новом классе.
6. Постоянный машиночитаемый носитель данных по п. 1, в котором:
второй новый класс создан путем наследования из первого нового класса, если первый новый класс создан;
третий новый класс создан путем наследования из второго нового класса, если второй новый класс создан;
четвертый новый класс создан путем наследования из третьего нового класса.