Citrix ADC 拡張機能-ライブラリ参照

ポリシー拡張でサポートされるライブラリのリスト。

  • 基本ライブラリ
  • Stringライブラリ
  • 正規表現パターン-文字クラス
  • 正規表現パターン-パターンアイテム
  • Tableライブラリ
  • Mathライブラリ
  • ビット演算ライブラリ
  • オペレーティングシステムライブラリ
  • Citrix ADCライブラリ

基本ライブラリ

   
assert(v[,message]) v が false の場合、オプションのメッセージとともにエラーを発行します。
error(message) 関数を終了し、エラーメッセージを報告します。
ipairs(a) 配列aのためのイテレータ。各反復のインデックスと値を返します。
pairs(t) テーブルtのイテレータ。各反復のキーと値を返します。
tonumber(e[,base]) e を数値に変換し、オプションの基数を指定します。
tostring(v) vを文字列に変換します
type(v) 数値、文字列、ブール値、テーブルなど、vのタイプを返します。
getmetatable (object) オブジェクトにメタータブルがない場合は nil を返します。それ以外の場合、オブジェクトのメタレコードに「__metatable」フィールドがある場合は、関連付けられた値を返します。それ以外の場合は、指定されたオブジェクトのメタレコードを返します。
setmetatable (table, metatable) 指定されたテーブルのメタテーブルを設定します。(他のタイプのメタータブルをLuaから変更することはできません。Cからのみ変更してください) メタテーブルがnilの場合、指定されたテーブルのメタテーブルを削除します。元のメタレコードに「__metatable」フィールドがある場合、エラーが発生します。
select (index, ···) 引数番号インデックスの後のすべての引数を返します。インデックスが文字列「#」の場合は、それが受け取った余分な引数の合計数を返します。
pcall (f[, arg1, ···]) プロテクトモードで指定された引数で関数fを呼び出します。これは、呼び出しが成功したかどうかを示す最初の結果としてステータスコードを返します。呼び出しが成功した場合、ステータスコードとともに、それはまた、それ以外の場合はエラーメッセージを返し、呼び出しからすべての結果を返します。
xpcall (f, msgh [, arg1, ···]) この関数は pcall に似ていますが、エラー処理の引数も取ります。
_VERSION 現在のインタプリタのバージョンを返します。

Stringライブラリ

   
string.byte(s[, i [, j]]) s[i] のバイト値を s[J]に返します。デフォルト i = 1 および j = i
string.char (…) 整数パラメータで構成された文字列を返します。
string.find(s,pattern[,init[,plain]) s 内の正規表現パターンが最初に一致するものを検索します。マッチまたはnilの最初と最後のインデックスを返します。initは開始するインデックス、デフォルト1プレーン= trueはパターンが正規表現でないことを意味します。
string.format(form,…) パラメータのフォーマットされたバージョンを返します。
string.gmatch(s,pattern) 正規表現パターンで「s」を検索するための反復子。一致する値を返します。
string.gsub(s,pattern,repl[,n]) パターンのすべての(またはn)出現がreplに置き換えられたsのコピーを返します。
string.len(s) 文字列の長さを返します。
string.lower(s) 小文字に変換された文字列のコピーを返します。
string.match(s,pattern[,init]) s の正規表現パターンの最初の一致を検索し、キャプチャまたはパターン全体を返します。init は開始するインデックス、デフォルトは 1 です。
string.rep(s,n[,sep]) セパレータsep、デフォルトなしセパレータで、sのn個のコピーである文字列を返します
string.reverse(s) 逆にされた文字列を返します。
string.sub(s,i[,j]) sからs[i] へのsの[J] 部分文字列を返します。デフォルトjは文字列の終わりです。
string.upper(s) 大文字に変換された文字列のコピーを返します。
string.dump (function) 指定された関数のバイナリ表現を含む文字列を返します。

正規表現パターン-文字クラス

   
x the character x, except for magic characters ^$()%.[]*+-?)
を参照してください。 任意の文字
A 任意の文字
%c 任意の制御文字
%d 任意の数字
%g スペース以外の印刷可能な文字
%l 任意の小文字
%p 任意の句読点
%s 任意の空白文字
%u 任意の大文字
%w 任意の英数字
%x エスケープされたマジック文字 x (例:%%)
[set] 文字のセット:個々の文字のシーケンス、範囲x-y、および%クラス
[^set] 文字セットに含まれていません。

正規表現パターン-パターンアイテム

   
文字クラス
X* X の 0 文字以上の最長繰り返し
X+ X の文字を 1 回以上繰り返す
X- Xで0文字以上の最短繰り返し
X? X の 0 文字または 1 文字
%n n=1~9; n番目のキャプチャされた文字列にマッチします
%bxy は、バランスの取れた2つの文字xとyの間の部分文字列に一致します。例%b () は、2 つのカッコ間で部分文字列に一致します。
%f[set] は、次の文字がsetに属し、前の文字がsetに属さないような任意の位置で空の文字列に一致します。

パターンは、パターンアイテムのシーケンスです。 ^pattern は文字列の先頭に一致し、pattern $は文字列の末尾に一致します。

マッチした部分文字列は(パターン)を使用してキャプチャすることができます。pattern () のない括弧 () は、現在の文字列位置 (数値) を取得します。

Tableライブラリ

   
table.concat(list[,sep[,i[,j]]]) string list[i] .. sep .. list[i+1] .. sep . . . list[J]を返します。デフォルトsepは空の文字列です。既定値 i は 1、j は #list です。
table.insert(list,[pos,]value) インデックスposのリストに値を挿入します。pos のデフォルトは #list (リストの最後) です。
table.pack (…) インデックス 1 から始まるパラメータと、パラメータの総数を示すキー n を含む配列を返します。
table.remove(list[,pos]) 位置を埋めるために要素をシフトし、位置posで要素をリストから削除します。削除された要素を返します。posis #list のデフォルト (リストの最後)
table.sort(list[,comp]) リストの要素をソートします。compは、使用する比較関数です。compのデフォルトは < です。
table.unpack(list[, i [, j]]) list[i]~list[J]を返します。i の既定値は 1、j は #list です <c/ode>。

Mathライブラリ

さまざまな三角関数と対数関数は表示されません。

   
math.abs(x) x の絶対値を返します。
math.ceil(x) 最小の整数>= xを返します。
math.floor(x) 最大整数<= xを返します。
math.fmod(x,y) 0に向かって商を丸めるx/yの余りを返します。
math.huge 値 >= その他の数値。
math.max(x,…) 最大引数を返します。
math.min(x,…) 最小引数を返します。
math.modf(x) xの整数部と小数部を返します。
math.random() 0 と 1 の間の擬似乱数を返します。
math.random(m) 1とmの間の擬似ランダム整数を返します。
math.random(m, n) m と n の間の擬似乱数整数を返します。
math.randomseed(x) 擬似乱数ジェネレータを x に設定します。
math.sqrt(x) x (x ^ 0.5) の平方根を返します。
math.acos(x) x のアークコサインを返します(ラジアン単位)。
math.asin(x) x のアークサインを返します(ラジアン単位)。
math.atan(x) x のアークタンジェントを返します(ラジアン単位)。
math.atan2(y, x) y/x のアークタンジェントを返します (ラジアン単位)。
math.cos(x) xの余弦を返します。
math.cosh(x) x の双曲線余弦を返します。
math.sin(x) x の正弦を返します。
math.sinh(x) x の双曲線正弦を返します。
math.tan(x) x のタンジェントを返します。
math.tanh(x) x の双曲線正接を返します。
math.deg(x) 角度 x (ラジアンで指定) を度単位で返します。
math.exp(x) 値 e^x を返します。
math.frexp (x) x = m2e、eが整数であり、mの絶対値が範囲 [0.5、1)にあるようにmとeを返します。
math.ldexp (m, e) m2e (e は整数でなければなりません) を返します。
math.log (x [, base]) 指定された底のxの対数を返します。base のデフォルトは e です。
math.pow (x, y) x^y を返します。
math.rad (x) 角度 x (度単位) をラジアンで返します。
math.pi πの値。

ビット演算ライブラリ

特に明記されていない限り:

  • すべての関数は、範囲(-2^51、+2^51)の数値引数を受け入れます。
  • 各引数は、2 ^ 32による除算の残りの部分に正規化され、(不特定の方法で)整数に切り捨てられ、最終的な値が範囲[0,2^32 - 1]内になります。
  • すべての結果が範囲[0,2^32 - 1]内にある。
   
bit32.arshift(x,disp) 数値xを右 (+disp) または左 (-disp) に算術的にシフトしたdispビットを返します。
bit32.band (…) 引数のビット単位ANDを返します。
bit32.bnot(x) xのビット単位NOTを返します。
bit32.bor (…) 引数のビット単位ORを返します。
bit32.btest(…) 引数のビット単位ANDがゼロでない場合はtrueを返します。
bit32.bxor (…) 引数のビット単位排他的論理和を返します。
bit32.extract(n,field[,width]) nのfieldからfield + width - 1までのビットを返します(最上位から最下位までのビット数)。widthのデフォルトは 1 です。
bit32.replace(n,v,field[,width]) fieldからfield + width -1へのビットをvで置き換えられたnのコピーを返します。デフォルトのwidthは1です。
bit32.lrotate(x,disp) xをdispビット左(+disp)または右(-disp)に回転した数値を返します。
bit32.lshift(x,disp) xをdispビット左(+disp)または右(-disp)にシフトした数値を返します。
bit32.rrotate(x,disp) xをdispビット右(+disp)または左(-disp)に回転した数値を返します。
bit32.rshift(x,disp) xをdispビット右(+disp)または左(-disp)にシフトした数値を返します。

オペレーティングシステムライブラリ

   
os.clock () CPU 時間の秒単位の近似値を返します。
os.date ([format [, time]]) 指定された文字列フォーマットに従ってフォーマットされた文字列または日付と時刻を含むテーブルを返します。
os.time ([table]) 引数なしで呼び出されたときの現在の時刻、または指定されたテーブルで指定された日付と時刻を表す時刻を返します。
os.difftime (t2, t1) 時間 t1 から時間 t2 までの秒数を返します。

Citrix ADCライブラリ

   
ns.logger:level(message) レベルが緊急、アラート、クリティカル、エラー、警告、通知、情報、デバッグであるメッセージをログに記録します。パラメータは、C printf () 関数と同じです。書式文字列と、書式文字列の% 指定子に値を指定するための可変数の引数です。