exponenta event banner

разбор

Анализ пользовательского кода для функций, типов, глобальных переменных и их зависимостей

    Описание

    success = obj.parse(), где obj является объектом Simulink.CodeImporter или sltest.CodeImporter класс, выполняет синтаксический анализ пользовательского кода, но не выполняет повторный синтаксический анализ пользовательского кода, если пользовательский код был проанализирован ранее, и ни пользовательский код, ни параметры obj.CustomCode изменились после предыдущего синтаксического анализа. Результаты успешного синтаксического анализа или информация об ошибке из неудачного синтаксического анализа хранятся в ParseInfo имущество obj.

    success = obj.parse('Force','On') анализирует пользовательский код независимо от того, были ли внесены какие-либо изменения с момента предыдущего синтаксического анализа.

    success = obj.parse('Force','Off') имеет тот же эффект, что и success = obj.parse().

    Примеры

    свернуть все

    %% Create code importer object
    obj = Simulink.CodeImporter;
    
    %% Set the custom code to import
    obj.CustomCode.InterfaceHeaders = ["pumpController.h"];
    obj.CustomCode.IncludePaths = ["./include"];
    obj.CustomCode.SourceFiles = ["src/pumpController.c" "src/utils.c"];
    
    %% Parse custom code
    s = obj.parse;
    obj.ParseInfo
    
    ans = 
    
      ParseInfo with properties:
    
                   Success: 1
        AvailableFunctions: ["Controller"    "setFanTempThreshold"    "setPumpTempThreshold"]
            EntryFunctions: ["Controller"    "setFanTempThreshold"    "setPumpTempThreshold"]
            AvailableTypes: "pump_control_bus"
                    Errors: []
    

    Выходные аргументы

    свернуть все

    Индикатор успешности синтаксического анализа, возвращаемый как логический скаляр. Simulink ® создает исключение, если синтаксический анализ не удался.

    См. также

    Представлен в R2021a