デザインポリシーの作成とカスタマイズ

はじめに

このドキュメントでは、カスタムポリシーを作成するプロセスの概要を説明します。

ルールの閲覧と追加

ALINT GUIは、カスタムポリシーの作成がしやすい全ての必要なツールを提供しています。

  • runalintのコマンドを実行して、GUIモードでツールを起動

  • 新しいポリシーの作成のため、File メニュー | New | Policy File を選択

新しいポリシーを作成を行うと、必要な全てのウィンドウがアクティブになったPolicy パースペクティブに自動的に切り替わります (図1)。

図1: Policy パースペクティブ

Rule Plug-in Viewer は、インストールされているルールプラグインを表示するメインツールになります。

  • ルールは、いくつかの定義済み分類によるグループ化表示、およびフラットなリストとして表示することが可能です。Design Methodology Topics はデフォルトの分類になります (図2)。

  • 現在選択したルールまたはグループは、通常のドラッグ&ドロップ方式、または Space キーを押す(このアクションに関連付けられているデフォルトのホットキー)ことでポリシーに追加することが出来ます。

  • Rule Description Viewer にコンテキスト依存ルールのレファレンスが表示されます。通常、本ウィンドウにいはルールの短い説明、問題を修正する方法、ソースコードの例が含まれています。

図2: プラグイン名によるデフォルトグループ

プラグイン名でそれらを確認することが出来るようにデフォルトではルールがグループ化されています(図2)。しかし、いくつかのプラグインがある場合、より一般的な観点からプラグインやレビュールールから抽象化したいことがあります。このような場合、Merge Classifications 機能を使用してます(図3 は、マージされた分類の例です)。

図3: Merged Classification

ルールのカスタマイズ

ルールはポリシーファイルに追加後、設定可能なパラメータでカスタマイズすることができます。 ルールのカスタムコンフィグレーションを作成するには、ルールを右クリックし Configure Rule オプションを選択します。カスタムルールの設定は、ポリシーファイルの下にあるRule Configurations セクションに表示されます(図4)。

図4:Rule Configuration セクション

ルールのためにカスタムコンフィグレーションが作成されると、このルールのパラメータを変更することができます。現在選択したルールで使用できるパラメータのリストは、Rule Parameter Editor に表示されます(図5)。

図5: 変更されたパラメータの状況

ドロップダウンリスト、数値、正規表現、文字列、および文字列のリストを含む、いくつかの可能なパラメータタイプがあります。設定を変更するためには、デフォルトパラメータ値をダブルクリックします。変更されたパラメータは強調表示されます。

カスタムポリシーの使用

カスタムポリシーはすぐに使用することが可能で、.alintpolicyァイルに保存されます。ポリシーファイル名はポリシー名と一致するため、英数字記号のみで構成する必要があります。 ツールの使用モードに応じて、リンティングセッションでカスタムポリシーを表示する方法がいくつかあります:

  1. GUI: デフォルトのポリシー検索パスは、アクティブなデザインディレクトリとツールのインストールフォルダに設定されています。 代わりのグローバルポリシー検索パスを指定するために、 Toolsメニュー | Preferences | Linting | Entries | Policy directories を使用して下さい。

  2. スクリプト/バッチ: デフォルトのポリシー検索パスは、現在の作業ディレクトリとツールのインストールフォルダに設定されています。 カスタムポリシーの検索パス設定が必要な場合、-alint_policy_path switch スイッチを使用します - 詳細に関しては、User’s Guide | Macro Command Reference | alint command を参照してください。

Ask Us a Question
x
Ask Us a Question
x
Captcha ImageReload Captcha
Incorrect data entered.
Thank you! Your question has been submitted. Please allow 1-3 business days for someone to respond to your question.
Internal error occurred. Your question was not submitted. Please contact us using Feedback form.
We use cookies to ensure we give you the best user experience and to provide you with content we believe will be of relevance to you. If you continue to use our site, you consent to our use of cookies. A detailed overview on the use of cookies and other website information is located in our Privacy Policy.