regexkit.

Mac OS X CocoaとGnustepのためのPCREライブラリを使用した正規表現のためのObjective-Cフレームワーク
今すぐダウンロード

regexkit. ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • BSD
  • 価格:
  • FREE
  • 出版社名:
  • John Engelhart
  • 出版社のWebサイト:
  • オペレーティングシステム:
  • 10.5
  • ファイルサイズ:
  • 1.7 MB

regexkit. タグ


regexkit. 説明

Mac OS X CocoaおよびGnustepのためのPCREライブラリを使用した正規表現のためのObjective-Cフレームワーク Regexkitは正規表現のためのObjective-Cフレームワークです。・Mac OS X CocoaとGnustepのサポート。・サブクラスは必要ありません。豊富なObjective-Cカテゴリ追加の豊富なセットを持つすべてのNSARRAY、NSDictionary、NSSET、およびNSSTRING Foundationオブジェクトに正規表現サポートを追加します。・Unicode UTF-8サポートされています。・広範な高品質のマニュアル。・BSDライセンス付きのフルソースコード。・正規表現Engine.Includes Mac OS X 10.5 LeopardのSupports:・64ビットサポートのBSDライセンスPCRE PERL互換式ライブラリを使用します。 PPC、PPC64、I386、およびX86_64用に事前に構築されています。・ガベージコレクションが有効になっています。 Leopardsガベージコレクション機能の完全なサポート。・Xcode 3.0のマニュアルを統合する。リサーチアシスタントを介してリアルタイムAPI情報を入手してください。これが "regexkit"の主な機能です: ・速度の正規表現のコンパイル形式をキャッシュします。 ・複数のリーダー、シングルライターのマルチスレッドへのマルチスレッドセーフ、コンパイルされた正規表現キャッシュへのマルチスレッドアクセス。 ・HEAPストレージの使用を最小限に抑えます(つまり、malloc()と)。 ・Mac OS X上で直接Core Foundationを使用して、追加速度をかけます。 このリリースの新機能: ・RkPrettyObjectマクロをプリプロセッサマクロではなく関数に変更しました。これは実行可能ファイルから30K、またはアーキテクチャごとに4-7Kを剃ります。 ・PCRE_STUDYが正規表現を最適化できた場合は、PerformanceNoteを追加しました。 ・XcodeおよびPCRE構築ソースにOS固有のCFLAGを追加するには、xcode_cflags_ *とpcre_cflags_ *をregexkit build settings.xcconfigに追加しました。 ・上記の新しいCFlagsを使用して、-fstack-protectorを追加しました。 -fstack-protector-allは、多くのスタックのスマッシュをキャッチできるGCCの後のリリースからAppleをバックポートなGCC機能です。 ・変更されたProjectExportedSymbolsは、新しいRkerrorKey、Rkerrodomain、およびRkregexpcrelibrary NSString定数をエクスポートするためのSymbolsを修正しました。 ・NSExceptionおよびNSERRORにRegexkit Private Extensionsを追加して、単純なインスタンス化のためにそれぞれのローカライズ版の作成を簡素化しました。 ・ローカライズされた文字列の作成を簡単にするために、いくつかのRegexkitプリプロソプロセッサマクロを追加しました。これらは、基礎NSlocalizedStringファミリーのマクロの基礎と似ています。 ・変換RKConvertF8ToutF16RangeForstringとRkConvertutF16ToutF8RangeForストリングStringBufferの等価化によれば、内部ルーチンはより効率的なStringBuffer関数を呼び出すことができます。平凡な文字列メソッドは、StringBuffer関数の周囲のラッパーになりました。 ・Regexkit Private Function rklocalizedStringForpCrecompileErrorCodeを作成するrklocalizedStringForpCrecompileErrorCodeエンドユーザーが表示されるNSERRORの説明に適しているエラー記述文字列を返します。ローカライズされた文字列は、最終的にフレームワークバンドルリソースファイルPCREStringsから来ています。 ・ローカライズされた文字列にアクセスするための手段を提供するRKREGEXによって作成されたRkRegexによって作成されたRKFramewexBundleを作成しました。 ・NSERRORからNSERRORからNSExceptionを作成するプライベート関数を作成しました。initwithRegexString:Options:メソッドが以前にDISOD以降にDISEを作成していました。このメソッドは、ほとんどのエラー状態でNSErrorを作成して返します。 ・RkRegex Iqual:SpeedのRkRegexクラスオブジェクトである場合は、比較オブジェクトインスタンス変数に直接アクセスする。 ・指定されたポインタでUTF8エンコードされた文字のバイト数を返すためのRegexkit Private関数を追加し、ポインタの指定されたオフセットでUTF8エンコードされた文字の範囲を返す関数を追加しました。オフセットがUTF8エンコードされた文字の中央を指す場合、それは与えられたオフセットにあるUTF8文字の開始までバックアップされ、次にUTF8形式でエンコードされた単一のUnicodeコードポイントを表すために必要なバイト数を決定します。 フレームワークプライベートロッククラスが提供するロック戦略を拡張しました。以前はロッキングクラスはブロッキングの取得戦略のみを提供しました。現在利用可能な戦略は次のとおりです。 ・読みをお試しください。 ・書面を試してみてください。 ・書面をやめてから読んでみてください。 ・書面をやめてから、読み上げのために獲得してください。 ・ブロッキングの読み取りのために取得する。 ・ブロッキングを書くために取得する。 ・スレッドが共有リソースの要求された相互除外をすぐに取得できない場合は、特定のキャッシング機能がノンブロッキングであることを許可しました。 ・新しいプライベートロッククラス、RKConditionLockを追加しました。これは、より高価なNSDATEオブジェクトベースの時間の代わりに、NSTIMEINTERVALベースの相対時間とともに、より速い関数呼び出しインターフェースと強化されたロック方法論を提供するために行われました。 NSDateオブジェクトを使用すると、オブジェクトの作成と破棄のオーバーヘッドが最終的には、議論として倍数を伝えているため、著しいパフォーマンスのペナルティが大幅に減少します。相対的な時間二重合格したパラメータ引数を直接提供することによって、そのオーバーヘッドは完全にバイパスされています。 2つの関数RkFastConditionLockとRkFastConditionUnlockはすべての機能を提供します。これは直接呼び出すことができ、オブジェクト指向インタフェースメソッドはこれら2つの関数のスタブです。これらの関数とオブジェクトはエクスポートされず、フレームワークプライベートです。 ・2つの関数RKFastMutexlockおよびRkFastMutexunlockにロックするための共通ロジックの多くを統合しました。 RKLockクラスはこの共通コードベースに移動されましたが、rkreadWriteLockは変更されていません。 ・RKLOCKとRKConditionLockによって作成されたPTHREADミューテックスは、同じスレッドをロックし、ロックされていないミューテックスのロック解除、ロック解除されたミューテックスのロック解除、またはミューテックスのロック解除を試みるスレッドなど、特別な健全性チェックを実行するPTHREAD MUTEX_MUTEX_ERRORCHECKを使用して作成されます。それは別のスレッドによってロックされました。 ・PCREライセンスを明示的に含めるようにインストーラに表示されているライセンスを更新しました。 ・PCREライセンスをプロジェクトルートディレクトリライセンスファイルに追加しました。 ・Regexkitフレームワークにライセンスファイルを追加しました。 ・これが違いを生じるアーキテクチャのためにフルメモリバリアセマンティクスを実行するRKatomicbarrierマクロ/関数を追加しました。 ・BeginLockとEndlock Dtraceを変更しました。rklockとrkreadwriteLockによって提供されている情報と一致するように、INTからNSINTEGERの2番目の引数をプローブします。要求されたロック戦略および取得した最終ロックレベルは、単純なブール読み取り/書き込み表示の代わりに報告されます。 ・BeginLock、Endlock、およびRegexkit.usdtのロックを追加しました。 ・ヘッダファイルを複数のファイル、regexkitprivateTrace.h、regexkitprivateTrace.h、regexkitprivateLication.h、regexkitprivatelemation.h、regexkitprivatememory.h、regexkitprivatememory.h、regexkitprivatetethreads.h、およびnsStringPrivate.hに分割します。 ・rkregexを変更して、すべてのクラスの初期化が初期化方法で行われるようにしました。以前は、クラスが最終的に使用されていなくても実行されたロード方法では、一部の初期化が行われました。関数を呼び出すことが初期化動作を引き起こさないので、いくつかの関数エントリポイントでガードチェックを追加しました。 ・Constantsエントリの定数テーブル内のグループを正しく繰り返すようにgeneratehtml.plを更新しました。以前は、これは新しいグループごとに手動で更新されました。 ・2008年の著作権を更新しました。 ・ファイルの可用性.SQLを使用して、マニキュアシステムに可用性(導入、非推奨、バージョンで削除されたなど)を指定する機能を追加しました。 tokens.xmlファイルを作成するときにこの情報を使用するためにDocSet Toolsを更新しました。 ・さまざまな単体テストの構造を変更しました。時間の経過とともに、いくつかのファイルで複製され、その後時間の経過とともにドリフトされることができたコードがたくさんありました。これはRKTestCase.mに統合されました。これは、Regexkitユニットテストオブジェクトが継承するSENSESTCASEのサブクラスである一般的な基本オブジェクトを作成しました。 ・Unit Tests NSDateオブジェクトからMac OS X Malloc Stats機能を削除しました。両方ともdouble型であるため、nStimeIntervalと交換してください。 ・新しいマルチスレッドソートされたソートされたソートされたRegexコレクション機能に関するテストを保持するためのSortedRegexCollection.Mを追加しました。 バグの修正: ・regexkit.usdtでは、SeverityとGeneralStartendのPerformanceNoteプローブ引数が交換されました。これを修正しました。 ・regexkit_match_timing.inStrumentにType -oを修正しました。どういうわけか、 "%x"がbに変更されました。これは、機器が解析できず、したがってInstruments.appに表示されませんでした。 ・一部のHTMLファイルとPrint.cssスタイルシートにエラーを修正したそれは、あるタイトルを印刷可能な境界線を通過するように否定的にオフセットさせるであろう。 ・SourceCodeボックスがフォーマットされないようにするCommon.cssにFirefoxの表示バグを修正しました。 ・RkReadWriteLockクラスは、最大試行回数からスプリアスエラーの数の不正確な数を無害に表示します。 ・最初の試行で書き込みレベルのロックを取得できなかった場合は、RkreadWriteLockクラスが2回、内部デバッグカウンタを無害にインクリメントします。 ・RKReadWriteLockクラスは、PTHREADエラーがロックが取得されたのを妨げたかどうかにかかわらず、ロックの読み書き状態に関して内部IVARを誤って更新します。 ・RKREGEXの保持方法とリリース方法を変更して、RKatomicBarrierルーチンを使用してフルメモリバリアを強制しました。これは、PowerPCアーキテクチャなどの違いを生じさせるアーキテクチャ上の競合条件につながっている可能性があります。また、複数のCPUが同じメモリ位置を同時に更新しようとしている場合。 ・オブジェクトがRKREGEXクラスのメンバーであると判断されたときに、フレームワークの内部RkregexFromStringorRegex関数を変更しましたが、インスタンス化された正規表現で指定されたオプションは必要なオプションと一致しないため、インスタンス化された正規表現のクラスは新しいものを作成するために使用されます。 Base Rkregexクラスを使用する代わりに必要なオプションを使用してRKREGEX。これは、オブジェクト作成プロセスをオーバーロードするRkregexのサブクラスにのみ違いを生じるでしょう。 ・SourceForge Bug 1850418 - 「10.4歳未満のエラー」。この問題はリリース情報で説明されています.0.6.0 Betaのリリースノート。更新:このバグをバグとしてアップルに再送信#5708443。元のバグレポートは正しく動作するように閉じられました。与えられた正当化は「10.4 libsystem.dylbで理解していないことを理解していない場合は10.4ベースのリンカーエラー」です。(SIC)」と「2番目の投稿に関しては、バグはありません10.5リンカで。-macosx_version_min = 10.4では、10.5 libsystem.dylibとリンクするのが問題ありません。DTraceセクションはlibsystem.dylibの実装の一部です。それはDylibへのインタフェースの一部ではありません(しかし10.4リンカー)。それを知りません。」正直に言うと、エンジニアが正しく行動するように閉じるために与えられた正当化まで、エンジニアがそのバグからどのように飛躍したかについての損失で損失しています。 ・SourceForge Bug 1878659 - '10.5 Target'を構築する10.5システムを構築しません。 rk_requires_nil_terminationの条件付きを修正しました。以前の条件は、10.5システムを構築するが、10.4を厳密にターゲティングするときに、それをNS_REQUIRES_NIL_TERMINATIONとして誤って再定義しました。条件付きをさらに制限するために定義された(ns_requires_nil_termination)。また、定義された(__ objc_gc__)およびenable_dtrace_inStrumentationをさらに制限されるように更新され、これはmach-o / loader.hで定義されている定義(s_dtrace_dof)によってさらに制限されます。 ・SourceForge regexkitフォーラムメッセージ 'Match / Reflication flace flase forplase?'のDoug Dickinsonによって最初に報告されたバグを修正しました。これは、NSString.M Private Function RkStringBymatchingAndMandingのバグであることがわかりました。この関数では、置き換えが行われていない場合は最適化がありましたが、オリジナルに変更は加えられず、新しい文字を作成する代わりに元の文字列を返します。残念ながら、正規表現が検索対象の文字列の先頭に一致した場合は、置換文字列は '空'(すなわち@ "")でした。編集した文字列の最後のNSRANGEを元の文字列に対しても検索することで修正しました。 「開始時に一致していますが、NSRangeの場所が0から値が0に移動した場合のように置き換える」の場合は、これらの範囲が異なります。オフ。これはまた、文字列の末尾で起こった類似の検索と置き換えを実行したかもしれませんが、この条件もその条件を捉えます。


regexkit. 関連ソフトウェア