{"title":"Ruby Parser\u958b\u767a\u65e5\u8a8c (24-30) - parse.y\u304c\u751f\u6210\u3059\u308b\u30ce\u30fc\u30c9\u3092\u5909\u3048\u308b \u30fc hash\u30ea\u30c6\u30e9\u30eb","author_name":"yui-knk","version":"1.0","provider_url":"https://hatena.blog","blog_url":"https://yui-knk.hatenablog.com/","provider_name":"Hatena Blog","author_url":"https://blog.hatena.ne.jp/yui-knk/","url":"https://yui-knk.hatenablog.com/entry/2026/02/08/121236","published":"2026-02-08 12:12:36","categories":["Ruby Parser\u958b\u767a\u65e5\u8a8c","Ruby\u306e\u30ce\u30fc\u30c9\u66f8\u304d\u63db\u3048"],"type":"rich","image_url":null,"blog_title":"\u304b\u306d\u3053\u306b\u3063\u304d","height":"190","width":"100%","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fyui-knk.hatenablog.com%2Fentry%2F2026%2F02%2F08%2F121236\" title=\"Ruby Parser\u958b\u767a\u65e5\u8a8c (24-30) - parse.y\u304c\u751f\u6210\u3059\u308b\u30ce\u30fc\u30c9\u3092\u5909\u3048\u308b \u30fc hash\u30ea\u30c6\u30e9\u30eb - \u304b\u306d\u3053\u306b\u3063\u304d\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","description":"30\u65e5\u76ee: hash\u30ea\u30c6\u30e9\u30eb \u524d\u56de\u306f\u6b63\u898f\u8868\u73fe\u30ea\u30c6\u30e9\u30eb\u306e\u6d41\u308c\u304b\u3089=~\u6f14\u7b97\u5b50\u3092\u5bfe\u5fdc\u3057\u3001\u6642\u9593\u304c\u3042\u3063\u305f\u306e\u3067lambda\u306b\u3064\u3044\u3066\u3082\u5bfe\u5fdc\u3057\u305f\u306e\u3067\u3057\u305f\u3002 \u4eca\u56de\u306fhash\u30ea\u30c6\u30e9\u30eb\u306e\u5bfe\u5fdc\u3092\u3057\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002 parser\u306e\u5909\u66f4 \u3058\u3064\u306fhash\u30ea\u30c6\u30e9\u30eb\u306e\u5bfe\u5fdc\u306f\u307b\u3068\u3093\u3069\u5b8c\u4e86\u3057\u3066\u3044\u307e\u3059\u3002 primary | tLBRACE assoc_list '}' { $$ = new_hash(p, $2, &@$); RNODE_HASH($$)->nd_brace = TRUE; /*% ripper: hash!($:2) %*/ } static rb_node_t * new_hash(struct parser_p\u2026"}