タグ

overloadに関するfoosinのブックマーク (12)

  • 演算子 | を overload して TT のフィルタみたいな記法を実装する - 酒日記 はてな支店

    TT (Template-Toolkit) で値にフィルタを掛ける時に [% value | replace('x','y') | uri | html %]みたいに書きますが、Text::MicroTemplate だと仮に replace(), uri() という関数を用意しても <?= uri( replace($value,'x','y') ) ?>こんな感じ。なんか読みにくい気がする。(まあ PHP だってそうだといえばそうなんだけど) <?= $value | replace('x','y') | uri ?>こんな風に書けたら素敵ですよね。ということでこんなのを書いてみた。 package Filter; use strict; require Exporter; our @ISA = qw/ Exporter /; our @EXPORT_OK = qw/ html uri

    演算子 | を overload して TT のフィルタみたいな記法を実装する - 酒日記 はてな支店
  • 2005/12/03 - memo - unknownplace.org

    Catalyst のぷらぎんかいてて overload もデリファレンスとかでつかうならいいかなとか思った。 普通の演算子のオーバーロードは C++ とかだとかっけーんだけど、Perl でやるとうまく使わない限りなんか微妙で好きじゃなかったんだけど。デリファレンスのそれは結構なかなかかも。 #!/usr/bin/perl use strict; package OverloadTest; use overload ( q{""} => sub { shift->{text} }, '${}' => sub { shift->{scalar} }, '@{}' => sub { shift->{array} }, '&{}' => sub { shift->{function} }, ); sub new { my $self = bless {}, shift; $self->{text}

  • ゆの in Perl - Bulknews::Subtech - subtech

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    ゆの in Perl - Bulknews::Subtech - subtech
  • overload - Perl の演算子のオーバーロードを行うパッケージ - perldoc.jp

    overload - Perl の演算子のオーバーロードを行うパッケージ 概要¶ package SomeThing; use overload '+' => \&myadd, '-' => \&mysub; # etc ... package main; $a = new SomeThing 57; $b=5+$a; ... if (overload::Overloaded $b) {...} ... $strval = overload::StrVal $b; 説明¶ オーバーロード関数の宣言¶

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • Perl で arguments->callee ではなくて arguments.callee と書けるようにした - IT戦記

    ここを参考にして http://d.hatena.ne.jp/tokuhirom/20080418/1208503547 use overload を使ってみた package Acme::JS::Arguments; use strict; use warnings; use Devel::Caller qw(caller_args); use Exporter; our @ISA = qw(Exporter); our @EXPORT = qw(arguments callee); sub arguments { bless [ caller_args(1) ], 'Acme::JS::Arguments::Callee' } sub callee { my $self = '__callee__'; bless \$self, 'Acme::JS::Arguments::Callee

    Perl で arguments->callee ではなくて arguments.callee と書けるようにした - IT戦記
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • 結城浩の『Perlクイズ』 [まぐまぐ!]

    =========================================================== 結城浩の『Perlクイズ』≪パズル≫ 2005-08-08 Puzzle.0040 http://www.hyuki.com/pq/ [PQ/P]≪パズル≫では実用性を無視したクイズを出します。 =========================================================== ■今日の一言 ----------------------------------------------------------- こんにちは。結城浩です。 今回も、問題を出してから数時間くらいの間にどどっと 解答メールが届きました。 午前1時とか、午前2時の解答メールもありました…。 みなさん、ご解答ありがとうございます。 全員分紹介できず、ごめんなさい。

    結城浩の『Perlクイズ』 [まぐまぐ!]
  • http://ja.doukaku.org/comment/4932/

  • メルマ!

    メルマ!サービス終了のお知らせ いつもメルマ!をご利用いただき誠にありがとうございます。 サービス開始以来、たくさんの皆様にご利用いただきましたメルマ!ですが、 誠に勝手ながら、2020年1月末を持って一部を除きサービスを終了させていただく事となりました。 今までのご愛顧、誠にありがとうございました。 1月末以降のスケジュールは以下となります。 (スケジュールは変更となる可能性があります) 2020年2月14日 マイメルマでの記事ダウンロード機能の停止(マイメルマの停止) 2020年3月2日 全てのデータを削除 記事データのダウンロード機能に関しては、マイメルマよりご利用ください。 今までご利用いただきまして、当にありがとうございました。 サービス終了に伴うQ&A Q. 読者のメールアドレスは公開されますか? A. メールアドレスはすべてメルマ!でお預かりしているものとなります。 大変申

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

  • CentOS 5.1 の perl をリビルドする - daily dayflower

    2008-12-26 追記 CentOS 5.2 の updates の perl-5.8.8-15.el5_2.1 で下記該当パッチ+αがあたった状態になっています。もう自分でパッチをあててリビルドする必要はありません(RHEL 5(.2) の perl-5.8.8-15.el5_2.1 で例のバグが治っていた - daily dayflower)。 overload の rebless バグとパフォーマンスペナルティ問題 については下記参照。 YappoLogs: FedoraCoreやCentOS系の遅いPerlのパッチの件 overloadと再blessの問題 - Unknown::Programming overload が無効? - Practice of Programming YappoLogs: overloadのreblessとRHLのoverloadが遅いパッチ ov

    CentOS 5.1 の perl をリビルドする - daily dayflower
  • 1