Pythonでジャムを使う方法

anonymity
リリース: 2019-06-20 10:08:31
オリジナル
7753 人が閲覧しました

Bjam は Make に似たプロジェクト管理ツールです。Boost 用にカスタマイズされたコンパイル マネージャーです。Perforce Jam から開発された FTJam に基づいています。Bjam は Perforce Jam と下位互換性があります。

Bjam ツールは Boost.Jam プロジェクトによって保守されています。

Pythonでジャムを使う方法

Bjam の現在の最新バージョンは 3.1.9 (Boost-1.31.0 とともにリリース) です。これは、Jam/MR の 2.4 に基づいています。

Jam 言語定義

語彙

Jam は、すべてのトークン (Token) が空白で構成されていると考えています。 、タブ、または改行)。

記号 (:) と (;) を含む場合も、空白文字で区切る必要があります。

例外:

トークンは引用符 ( ") では、空白記号を使用できます。

記号 (/) は引用符と空白文字をエスケープできます。

{} で囲まれた文字列は空白記号を使用でき、単なる文字列とみなされます。

キーワードをトークンとして使用する場合は、引用符で囲む必要があります。

組み込みルールのセマンティクス

1. 依存関係の構築

DEPENDS ターゲット 1 : ターゲット 2 ;

# ターゲット 1 の使用はターゲット 2 に依存します。ターゲット 2 がターゲット 1 よりも新しい場合、ターゲット 1 は再構築されます。

INCLUDES ターゲット 1 : ターゲット 2 ;

コンストラクト依存関係を変更する

ALWAYS ターゲット ;

LEAVES ターゲット ;

NOCARE ターゲット;

NOTFILE ターゲット ;

NOUPDATE ターゲット ;

TEMPORARY ターゲット ;

3.Tools

# ECHO args ;

パラメータの表示

EXIT args ;

パラメータを表示して終了します。

GLOB ディレクトリ: パターン: downcase-opt

ディレクトリからパターンに一致するファイル名を取得します。

MATCH regexps: list

リストから正規表現に一致するシンボルを取得します。

フロー制御

for var in list { states }

リスト内の項目ごとにステートメントを 1 回実行します。var はリスト要素の値になるように設計されています。

if cond { ステートメント }

[ else ステートメント ]

明らかに、else 部分はオプションです。

条件は次のようになります:

a 当a的元素中最少有一个非空字符串时为true;
a = b  列表元素全部相同时为true
a != b  列表元素不完全相同时为true
a < b  a和b中,第一个不相同的元素相比较, a的元素比b小(按字符串顺序).
a <= b  a中每个元素都比b对应元素小或相等
a > b  a和b中,第一个不相同的元素相比较, a的元素比b大(按字符串顺序).
a >= b  a中每个元素都比b对应元素大或相等
a in b  a所有元素都可以在b中找到,或者a是空表
! cond  逻辑非 
cond && cond  逻辑与
cond || cond  逻辑或
( cond )  优先运算
ログイン後にコピー

include file ;

jam を使用してファイルを読み取り、処理します。

このプロセスは解析フェーズ中に発生するため、ファイルは構築されず、ファイル スコープはありません。

local vars [ =値 ] ;

ローカル変数を定義すると、{} の外側にある元の変数の値が格納されます。戻り値、注意してください。ルールでは、return はルールの実行プロセスから飛び出すわけではありません。

switch value 
{ 
case pattern1 : statements ; 
case pattern2 : statements ; 
... 
}
ログイン後にコピー

値に従って 1 つまたは 0 個のステートメントを実行します。パターンは次の記号ワイルドカード

です。

? 任意の文字に一致します

* 0 個以上の文字に一致します

[chars] chars 内の任意の文字に一致します

[^chars] chars にない任意の文字に一致します

/x x と一致します (他のワイルドカードをエスケープします)

while cond { ステートメント }

条件が true の場合、ステートメントは繰り返し実行されます。

#変数コントロールと内部 変数の作成

Jam 変数は文字列リストであり、その要素は 0 個または複数の文字列です。未定義の変数と空の変数

(要素 0) ) 違いはありません。ただし、変数は複数の空の文字列を含むように定義できます。

変数は $(変数) を通じて値を取ることができます。

変数には「グローバル」または「 2 種類のターゲット固有の変数。ターゲット固有の変数は、ターゲットの構築時にのみ値を受け取ります。変数を定義するにはいくつかの方法があります。

 variable = elements ; 
 variable += elements ; 
 variable on targets = elements ; 
 variable on targets += elements ; 
 variable default = elements ; 
 variable ?= elements ;
ログイン後にコピー

最初の 2 つの方法はグローバル変数を定義します、 3 番目の方法 ターゲット固有の変数を定義する 4 番目の方法と同じです

= は変数の内容を書き換えることができます = 元の内容と新しい内容を接続します

最後の 2 つの効果は同じです。変数が定義されていない場合、グローバル変数を定義します。

以上がPythonでジャムを使う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート