示例#1
0
    void JSBHaxe::Emit(JSBPackage* package, const String& path)
    {
        package_ = package;

        Vector<SharedPtr<JSBModule>>& modules = package->GetModules();

        source_ += "package atomic;\n\n";

        for (unsigned i = 0; i < modules.Size(); i++)
        {
            ExportEnums(modules[i]);
        }

        Begin();

        for (unsigned i = 0; i < modules.Size(); i++)
        {
            ExportModuleConstants(modules[i]);
        }

        End();

        for (unsigned i = 0; i < modules.Size(); i++)
        {
            source_ += "\n//----------------------------------------------------\n";
            source_ += "// MODULE: " + modules[i]->GetName() + "\n";
            source_ += "//----------------------------------------------------\n\n";
            ExportModuleClasses(modules[i]);
        }


        //End();
        WriteToFile(path);

    }
void JSBTypeScript::Emit(const String& path)
{
    Vector<String> modules;
    modules.Push("Container");
    modules.Push("Core");
    modules.Push("Engine");
    modules.Push("Resource");
    modules.Push("Scene");
    modules.Push("UI");
    modules.Push("Atomic2D");
    modules.Push("Atomic3D");
    modules.Push("Audio");
    modules.Push("Graphics");
    modules.Push("Input");
    modules.Push("IO");
    //modules.Push("Math");
    modules.Push("Navigation");
    modules.Push("Network");
    modules.Push("Physics");
    modules.Push("Javascript");

    Begin();

    for (unsigned i = 0; i < modules.Size(); i++)
    {
        ExportModuleEnums(modules[i]);
    }

    for (unsigned i = 0; i < modules.Size(); i++)
    {
        ExportModuleConstants(modules[i]);
    }

    for (unsigned i = 0; i < modules.Size(); i++)
    {
        source_ += "\n//----------------------------------------------------\n";
        source_ += "// MODULE: " + modules[i] + "\n";
        source_ += "//----------------------------------------------------\n\n";
        ExportModuleClasses(modules[i]);
    }


    End();
    WriteToFile(path);

}