SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CurlデベロッパーセンターPick Up(AD)

自分でつくれる!Curl言語
~マクロを用いた言語カスタマイズ~(基礎編)

  • このエントリーをはてなブックマークに追加

使用したマクロの機能

 今回紹介したマクロの機能を簡単に説明します。詳しくはヘルプを参照してください。

  • define-macro:マクロを定義します。returnでCurlSourceオブジェクトを返却しマクロ呼び出しの箇所に置換されます。
  • expand-template:Curlソースコードを表すテキストをCurlSourceオブジェクトに変換します。
  • identifier:マクロの入力パターンの1つです。任意の識別子に使用します。
  • token:マクロの入力パターンの1つです。リテラル、式、演算子に使用します。
  • macro-env:manifestやpackageのメタデータを取得することが可能です。
  • bounded-comma-sequence:カンマ区切りの繰り返しを宣言します。
  • OperatorKind:Curl ソース パーサーでサポートされている演算子です。文字列からCurlSourceを作成するより処理速度が速い

まとめ

 基礎編では、マクロを利用してデバッグトレースを出力する方法を紹介しました。マニフェストと関連づけることで業務APに修正をかけずにデバッグトレースの内容を変えることも可能なため、かなり有効ではないでしょうか。応用編は、マクロの構文解析機能について紹介します。

参考資料

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
CurlデベロッパーセンターPick Up連載記事一覧

もっと読む

この記事の著者

五百藏 隆文(イオロイ タカフミ)

1988年よりCOBOLコンパイラの開発に10年間従事した後、公共系の設計・開発を担当。 2010年よりCurlコンパイラの開発に参画する。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/6130 2011/09/14 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング