From ac0f5bb16204908922db5f28933f43305387c76c Mon Sep 17 00:00:00 2001 From: Kent Fredric Date: Sun, 2 Jun 2013 20:39:55 +1200 Subject: [PATCH] Build results of 6255955 (on master) --- Build.PL | 2 +- Changes | 5 +++++ META.json | 18 +++++++++--------- META.yml | 18 +++++++++--------- README | 14 +++++++++++++- examples/self_structure.dot | 12 +++++++----- examples/self_structure.pl | 12 ++++++++---- examples/self_structure.png | Bin 39090 -> 27951 bytes lib/MetaPOD.pm | 16 ++++++++++++++-- lib/MetaPOD/Assembler.pm | 4 ++-- lib/MetaPOD/Extractor.pm | 4 ++-- lib/MetaPOD/Format/JSON.pm | 4 ++-- lib/MetaPOD/JSON.pm | 4 ++-- lib/MetaPOD/Result.pm | 4 ++-- lib/MetaPOD/Role/Format.pm | 4 ++-- lib/MetaPOD/Spec.pm | 4 ++-- t/self-extract.t | 14 +++++++++----- 17 files changed, 89 insertions(+), 50 deletions(-) diff --git a/Build.PL b/Build.PL index ffe38e0..64dd45b 100644 --- a/Build.PL +++ b/Build.PL @@ -17,7 +17,7 @@ my %module_build_args = ( "Kent Fredric " ], "dist_name" => "MetaPOD", - "dist_version" => "0.1.2", + "dist_version" => "0.1.3", "license" => "perl", "module_name" => "MetaPOD", "recommends" => {}, diff --git a/Changes b/Changes index e367a7b..ef68006 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,10 @@ Release history for MetaPOD +0.1.3 2013-06-02T08:27:59Z + [Documentation] + - Add "What can we do for you" section. + - Add an image of example usage. + 0.1.2 2013-06-02T07:12:28Z [Bug Fix] - Update Moo dep to solve bug caused by builder + 1.000007 Moo diff --git a/META.json b/META.json index 29d4f70..fe016c3 100644 --- a/META.json +++ b/META.json @@ -72,35 +72,35 @@ "provides" : { "MetaPOD" : { "file" : "lib/MetaPOD.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::Assembler" : { "file" : "lib/MetaPOD/Assembler.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::Extractor" : { "file" : "lib/MetaPOD/Extractor.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::Format::JSON" : { "file" : "lib/MetaPOD/Format/JSON.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::JSON" : { "file" : "lib/MetaPOD/JSON.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::Result" : { "file" : "lib/MetaPOD/Result.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::Role::Format" : { "file" : "lib/MetaPOD/Role/Format.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" }, "MetaPOD::Spec" : { "file" : "lib/MetaPOD/Spec.pm", - "version" : "v0.1.2" + "version" : "v0.1.3" } }, "release_status" : "stable", @@ -115,7 +115,7 @@ "web" : "https://github.com/kentfredric/MetaPOD" } }, - "version" : "0.1.2", + "version" : "0.1.3", "x_BuiltWith" : { "modules" : { "Carp" : "1.29", diff --git a/META.yml b/META.yml index ae5b034..4d21fb8 100644 --- a/META.yml +++ b/META.yml @@ -23,28 +23,28 @@ name: MetaPOD provides: MetaPOD: file: lib/MetaPOD.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::Assembler: file: lib/MetaPOD/Assembler.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::Extractor: file: lib/MetaPOD/Extractor.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::Format::JSON: file: lib/MetaPOD/Format/JSON.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::JSON: file: lib/MetaPOD/JSON.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::Result: file: lib/MetaPOD/Result.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::Role::Format: file: lib/MetaPOD/Role/Format.pm - version: v0.1.2 + version: v0.1.3 MetaPOD::Spec: file: lib/MetaPOD/Spec.pm - version: v0.1.2 + version: v0.1.3 requires: Carp: 0 Data::Dump: 0 @@ -62,7 +62,7 @@ resources: bugtracker: https://github.com/kentfredric/MetaPOD/issues homepage: https://github.com/kentfredric/MetaPOD repository: https://github.com/kentfredric/MetaPOD.git -version: 0.1.2 +version: 0.1.3 x_BuiltWith: modules: Carp: 1.29 diff --git a/README b/README index 6a57828..0189abe 100644 --- a/README +++ b/README @@ -2,7 +2,7 @@ NAME MetaPOD - An evolution of POD VERSION - version 0.1.2 + version 0.1.3 What is MetaPOD 1. Documentation About Documentation @@ -25,6 +25,18 @@ What is MetaPOD * Show pretty graphs and things showing how classes are related to each other +What can MetaPOD do for me + At present, there is not much built on top of the MetaPOD "API", so it + is marginally limited. + + And at present, there is not much on "CPAN" with MetaPOD annotations, so + any such functionality is presently limited by that. + + However, for a taste of what we might see with widespread use of + MetaPOD, here is what we can easily determine from the present "API", + with the existing annotations in within MetaPOD itself: + http://kentfredric.github.io/MetaPOD/media/self_structure.png + People who are writing MetaPOD Eventually, the goal is to have the MetaPOD itself able to be generated via tools during development, so that the meta-layer information is diff --git a/examples/self_structure.dot b/examples/self_structure.dot index 62b3ce7..aa2fd99 100644 --- a/examples/self_structure.dot +++ b/examples/self_structure.dot @@ -1,5 +1,7 @@ digraph test { + rankdir=LR; ratio="fill"; + node [shape="box"]; MetaPOD [label="MetaPOD"]; node1 [label="MetaPOD::Assembler"]; node2 [label="Moo::Object"]; @@ -10,9 +12,9 @@ digraph test { node7 [label="MetaPOD::Spec"]; node8 [label="MetaPOD::Format::JSON"]; node9 [label="MetaPOD::Role::Format"]; - node1 -> node2 [label="inherits"]; - node3 -> node4 [label="inherits"]; - node8 -> node9 [label="does"]; - node8 -> node2 [label="inherits"]; - node6 -> node2 [label="inherits"]; + node1 -> node2 [color="red", dir="forward", label="inherits"]; + node3 -> node4 [color="red", dir="forward", label="inherits"]; + node8 -> node9 [color="blue", dir="forward", label="does"]; + node8 -> node2 [color="red", dir="forward", label="inherits"]; + node6 -> node2 [color="red", dir="forward", label="inherits"]; } diff --git a/examples/self_structure.pl b/examples/self_structure.pl index 8b70409..209a99c 100644 --- a/examples/self_structure.pl +++ b/examples/self_structure.pl @@ -16,14 +16,18 @@ my $it = $rule->iter("$root"); my $assembler = MetaPOD::Assembler->new(); -my $g = GraphViz->new(); +my $g = GraphViz->new( + rankdir => 'LR', + + # ratio => 'compress', + node => { 'shape' => 'box' }, +); while ( my $file = $it->() ) { my $result = $assembler->assemble_file($file); $g->add_node( $result->namespace ); - $g->add_edge( $result->namespace, $_, label => 'inherits' ) for $result->inherits; - $g->add_edge( $result->namespace, $_, label => 'does' ) for $result->does; - + $g->add_edge( $result->namespace, $_, label => 'inherits', color => 'red', dir => 'forward' ) for $result->inherits; + $g->add_edge( $result->namespace, $_, label => 'does', color => 'blue', dir => 'forward' ) for $result->does; } print $g->as_debug; diff --git a/examples/self_structure.png b/examples/self_structure.png index 630bda11cabc35af91ce558c1f729f6e544e412d..9f10698fa6482a2344e8192c69ac99beecac8754 100644 GIT binary patch literal 27951 zcmbrlbyyrt(=WV)APH_EVUYmAJ;*|E4<6hh1Sf&TZGn*B?hrh<2X__;?(VR-yDbi9 zx$oz_zW03R{p*}-dgki+Rn2sFb#-@5S543-MQN;;BrgE~0G7;02^9d~84Un{bc_BB zfuxMPdI136;4%`TYOZtp3vRCRm*m|iMV zkLx(&ze_l?j@SG-y`?)r55HqKY8DIZB4W}80_QKZgnO?;3 z9$O0^HD~x1-_hOBb*eZO0MKfP14RM=&QSq?5g-8I4ax;UR>EkW0h&ail&-2qW|#o5 z4){3v6c})ykO2aC!vOBcfNd;y9~c1ebouA*_Y>haXd4TGAtSC&*?-yoy+b_p#Ef7= zJo*pwf8O$ckROkre4qjbOQ)-cKeEOCpIp}o(8jDDJ#%&L410zY;-fh@12%=kx9&W0 zei4V+`W5hR!X2`SN!^EMqGL-RuPQp&vQ7RLMkUuSyOlwK!wPS=EkEp3i!?^YdPZ~X&M z=Ww-eOXZp_v-7jrFQ+;UHIDdiuKBXwywwDH=PV^pwnvl{yAsD`9d7q>pN9^G2KfsFaQ8`3xh_bW1o;T+yBJCb7NJ|BpH@~ z<2WBSo5*x)^3`V#%yH|;PSAWvC@lg7Whh)gjn=n>tR*DI7-Tjwdo~U*KmYi8r~Pxs zvFOTmqh2r>snO6QA$UT2P~N>gR^MPIIB>v&TKn&A>xY`Yko?{&>S0&qyt{}pqp#p1 zgdU234a~t}tAFl`Dt)(8?M^y>+Jt=I%na$zZ{N{vXqo_udKv4M5vW^^S)Wch@+H(( z2V_;@aqx7Ue~v-fX#eE~-Oms9neLgCk@UELuB7kp8jCWkCzIP#B|tkh#Y_a*Yw{aZ z?I5?m2xJ-_W7{Xkfc}uO(SToyKyo#xY7`!&^-{DJoLjSmed$s5W%STal)qDJ7en3h(*b$+llB%~-xkMr8qUeH{5I1Xt@FI$O)J ziI>aCps5kZ79g0Beiy(^XVtix+gApPVbg&7v(=OE{lqHRs2Z1y zJ5qSP)+%M=p!HHdj!wyima03F^Hc}YUZa<^BPIdQQtIb!pJiqk%GjFiaiovU^}npi zk>!E4eO)D2LvOGZR0z~*u?a?ts+YdR{&AKGKQOqxhQv#p!zvslOZX-3-+m~QDcU*N zkI39TBmq-}kVk3%+p?$-BF)X}cbV~LTxjkOJ1uCux8UK8E4?*XYzn3wTrWCzA~nQH z+63M<9O1SG>lyat-F@|@XVrgtT0(3I_?{Ze0kniynH60{5E4yIp@XZu2j+~;WH6nZ zCYLbbKDMwtfEr!s!u$i7pJ69hv{)Wq8#7$*i-!h$=v$~G64(8hAFSHC`m6Y*&sV+g zwRAGm7nfXZ>l84?%rq*^1mxRp4pb-xrYmEaF;HHkxpc4i>wPGCO#M(7P!!! zpY}=uPW|QOb7d!py7ct2t8+2WcGw|0`0%r$PW;dxMV0Ba{&7NosL_Pm))zJbWe3Tf zmZ9TF+^9vmJQLcjarqvCpFsSm{)7ZZ300zm7JHh^E`p(iN$wVz)C1YLWc>BjBGpY= ziO{o}3|VI+AU6gYnV^V{1 zke;)eCe{1PrCWJi1;R(6U!ARg!CM5)a9CNt$l^zroIK~cnO!A6O9WE|Cv4$I`u@}L6+ zw=rUsLSc*VLO@HqYng!6N_8nHo(V%p(>I-ArKlH4Yffa)(KY*;i*l+8pxssd+a%WE z_zDGaoXzQSA%&<1ef|S{uwrq@&4Yi&_)r4WG2v?@vT~(%0nrT%lRx8VFdaiDTAM8% zO5)N}a@7~4lWYo#y}{`dY&gM1EHdDudyw&b_+-4u`l;8BVZ`gLogn)~-z-i%r+bEk zY0@C$fY}P2=aS|L83GXAz=*`-pEwU3Yx~>u89vGu?HV{#+JU1 zyHfFYXcn#B1S@X7+j*Uqfs0j8k$E%s$;X@i-jk1rfm0tbiwTC{oJHem-~6f17y-TA znDNt7uWtYA>ABdQPLGf2<76GhpLp@Pl6vv7_U_oW{2@G5DE^foNO;`}MhUWqqv{aM z;>@0W%F&OtwOfg-?|m9aIZ(XQ%PSCkDXVe1{CwYpp-4(1SLd?m?(UVudh=C-*sWL> zi6PUMBQh?|MR#2yXup;*5qkRbSisEI zGZU5KpiV!VP{Kgjb!(ue{{B&FpL+>~F5M2bc3j?t#y&M(%j|;*bccqr5f<{rCc!F+ zv9Z~*EX!{zB_!u(bHe)ZNjS5qsr5^x!SgbkMtVusi3agLR<@IPTsg(=-vvgT-PhbP z*t2o{2)p8#2i|pTX*SloWkRKD=VTP|wkEXRs$|lNZERFnIE+m(EMJsryA>tDziU#x4Ke zNDKz-Y=Kh6rFoTUj+TfpA(Tqm~8(L&QV8z zhytDp0YFEAP^1yy6ZF5q*SiW5q}lj*?#L#4SbRHJ#|cG92$Kw9h#?X}@erfP9T@@q ziy?sjhW-DUM2xqFvNDS=dBeY>1xjlFmB2?v$x-`6prY(R*_Kn(9VS3!v8zxqQN>>S zCuzfeLbeoxHd4+?KjHKzKYg7TqsGf$_(31Mec$%855So(-IfzL+h6l+J&gYt-fLMB z@HsQ)-EzBy@ce6&CfR}E;xW|E0C!jr@sWwoahQPb)3D|59SZ*Ec@j^uMMBKrPh$B; z%!pfrT>dd2o<#8fNFGUUkpmC4O#1&y5WZDs6Z-MV%kd|W<45`iu;Vdc_YPC(z4_Xd zkn8!~qOitk=9@nPdwVzmbp#wX$XoAB;z@)JQcr5=w9CL74wjuO!M7!n{y3F-^$(N%JjaSg@N_DI1)o%SFSA?^b)&U3Q|yo|fnmigLMMNK6s zvR@x8jNc~QQ1^af5%yRD1r=T2SZWw7adb{kIgRwmMYzViCihwl>fvxy?E=#fsc%Tu zvXbe6SY~oq-$XT@R%a5`{q;4FIRCc3W93G#mOH$=ye!PGT@WK(jglvX z5ZE}7j1PM*C66F+j>(}Z8?h>uaCoMl-qw1^j9Gf+_64geUIay9OOQP}i4PGPR=7l# zWIi^lw5?ytMVwHyx*IPFV7c%((pk6ld878%Zu`Q zzlIJm**k7BMTt{GZ&-Dw#!q>pY4qEggVH3R_#sz$7qry5SbJE>f3HEhcu`ve13Jp< z!I%F0_|<7iHuVdI0t^)M4kQnQ6b_>%gODE=U7S-&r7!EHAk_9QwWu-gEczE4T&x_X&n#$uRt3TT6GaAr%I8eLNE$Yw9~ll4Pj0Flal1sx~tQ&&x@M$NS&hi^W+3y$gD z8?)7ZL7ULgEwE>a=hdcO_1n`8%d-#oZW0tsYm$p>>CGm3OWXFEsEjGno|m5@g;wpq zK{8p3yhfAZW?eLhHcTqnt<6oODkv32E+v!iNJ$8tX}=tpG)Oy;lsFt^X3vFkTRqG~uY)50lRy(%~FQG*Mj4oXT66e69Lz15tTd*9=BuyWe6D z^|eZICr_iW9X1h|L_vIoA9eKehK&C4_PamC?~rlzis}remKqMw;3G_fFxeO9#y1MLl-ce;AEsg%nJH zD!$*lI;}yYc579Vux9-z3chf%G}x}nGK5(AWSD|q>nryaj*=0oN>Reu2OfVMcImH5drs+$+SvdrBMQm5GFc6x z@;RYk?$;6?NL?=iV8@$Kva{jYv`)4x+&e#`)zX)161SOD`Dt`Omfds?uZSPU+kN7t3ujs{rJ)53F<@n zPe0R>6hn zq$UvNBfYf^U9@Y}8TwNfxh;I>Ea-oy@hpl7MzAS@Upo7SJA#5G*GsN17?4@Nv>otSZsZS!AU6t0)EG8j}jMH2=HdTfal*&B3f+#Kcq4 zfrLJzK!61*6i>DV%bM)Qx}ddda%-J#=sDQ+Zkgm@7=s@-YDpSYwePoZK?#3nNx(&A zuQO3LM85dSAYS$_F)f_d9vEl4(sCxvHY+q4(<5YYIAq*wr#e3$nZ1X$XG~Rdm&^9( zRfimX=K4ZG*rz{8&oUes{?GNz&w zNZ;9b&+OKQ(YU6EL&?C%vJ5}PrLE&j13UeBTY5D^eKL5{&p{fx1W|-aG;F$&%;usuc``f;HXpb0=%hw~`TjB_F?|6ATOUKz(402$P0NHbcOZr z3HFM~wxA4J0<=8%8{DDRWe@_cumE1jh~&KlSOz^M1n>`r0RB7nKQSqMSG6sBZC2?* z{#jjbo_q=I(gk(77^H+lQ1D)0`|Ojv zyu9E#*0Udl!~@wayesShBIyAO3k$n+;ANRt+2k(XpwBKN-(_F(v;uKE$Z%)Ko;M-E zyx$&rw;r|vm$A@SvC;RjpTPiN5nLCM&o0YY$EeTk0x|;!9M%+^_^;mua(Pv-bGWw0 z+L*z=63|eTD3|f0yCOFsc~aU*r;)ucv93%5;&)C!Xgr%e7dl?lplAGPR5AJg_(T_! zW8U>n$8QWu$6uWclOql1e0IS-Ms-F0S?5FJSzdpZw~VDtTHTtvH;ky`zl8SV%_Ej{ zZ%}kBXUrg;J$7HD&!Xs4ee=D#$W&7B9QvjgXPYik_%{f(qez@wH(VjA0T(!`f2YE& z@&Y2u&!U;YFNk1GAEB$0SsY^di6czR$;&pH@beip3^j&I1BY;;3 zy0l4DCe`l@-YH-$whV(Kg~W0VtE(;qJg8|;dmNd3bp|3zKCOq9r}`c28%NnG2M8Wd z#>*Xr%oMR*Vp$0~4#(I>M{h|pTSp|W*lj1|T>3c!OGjBi}t2C@YmNmC^5&c1D)k*klI2 ztNj@_Sq&DnALOG@eX`{Gf=(u;5^f}q35n> ziG)%^zow;FH&=1zfN%4owvJRuYO{gYs%VrfD`V96$MxX0uIxk$T@R4?fa?4ZdxzU_s&%Kqg+>uE@SgjVOW) z)QSCIAM?#Y_vvKrhsdVcK@tz$K)2xaF2wkZRt}^p-jk9R}5}RS*B6p+tAkDq` z<&}&L{6pxE-D+Up`|tA`EoN0O#7g3Yago3<>Q#kLV5Gklzlim96qIuJ_j3Ho=1RQY zJ@87-nH;tRaJAlD-K?)o@30*OTt(E1p}*LNf{B{NeVdktq%_z3Ybuq5S&X{)l+U-f z&uixVkwGw)NT$}~v3x1?o%+LYnIT5zpKMH$6lQRZxQ~SF`-%(N4+cmz7TaBjg!Lx#vX;R?lsre)4KcUSVm4o`{AFgSX(<@a}c5N<`5E7HDgajbBCo8S^ zr^l7{E|C*I19O$;#XWFz{_VkC$rn6#%++%OEF^xlw#W!5g$wi<6hoq%uTvj6+BuAD z=s?O23@Oe1rhrBrFq@XY)=kL}Y|i;?FhRsgXEwvaGi2BXuG zgL&y+%i-U?zYP{FYrXSR!xt=D4DEaS!V+$Oq>0Iqd{FohesRyD>Q8`8X!E6#M<#R3 zVp_k{#Fdut{SgzgFD4q=yZDW?gOI`rli$M|6T=?d`3k^72lKuq3ZFb1=jr`4?gZI} z?mXM};lAmfluFMZpd>fdS1U%sD_h#<;-RVO_N#P>K!L7`%em?*!^;nFjfbe>J0TZIHWl>1bf(z|r5$cXmxHNguVW#o18N zk)K*lxA!ga$HN=Ke5NH_c$g@OiK(QKkJVSzXGk0S@&~ixrsiMEAl8eOn=1O)_s?yv zw694LF`5b(zydY`bCcrUpDHa^B(wjT@V3tGCNs$dq-w*CHSGv?CFio=v6z@X((Z4D z+-H}R`ZZ=6R$=)%=a?-fk>WBLgHI7XY zVHHH0ION*h2Orw7zV@YOVZkP4DXccy>I1=J@Q%@*G>>>(#Wv?xC3ztS`Hy?l&=%s-~f#@0xX(rqv`KMHB^rbjPwbpvxKZ-p@~wf_GQ_zf}bGg<}gs zCdIS{w-#8o+}b)IhB_I$O>+uPxGX=uezY?Uf#<9ICD7h?DW)w(0t>~0@MzpJVr&P- zcUjUXWyQX z$CoLAO3L$ocz);R)OoKdyKL_I*}BM;P4AkFG;b0{RC(Ha@k|GHDtOSfhr+tdW%E3c z^`kv3)E);H2$Os2Kg^RvNUsP97*oMWfoA+W@(rQT{Hw(rhL*xtRkewD_|S|SSY!?= z7N}C2FpVw`q*crJnc%$5;r%40KGj}yfa$m>+5;XZj>*z5DpBI}8T^Wy&A+EVK!&v7 zI%HKe3LTx;A||KR=jtjd#<1hYt=j-9mWp>~eyPo=(}Q}?aJE5hhh~9m3X6-8%)wVf z&%|w3poIk*mK~voX`m1p7_t02y{Y4|mqdn4^?b8|8(1a5!o*taO)EHGTa$4%6y7M} zYR|@#YceHb$Cy99|2uZ!ib^@W?3z^`oXn}K9UEY$9xb{P_9E=fM_XhPOG>G^5?_J@ zvfx4LU-O1!Qo=?ve;`x^UO#FDQ~h{$-GfkJ?7F=l&9{l17d~=kwy)aTQZwc)h-gOb z5+*Z;=q|pX^of!_Bqg0TpC#*RFC?qzLpivEioWt!;IZVo(yK`s+#G!H2juhma(Wmr4}K&} z`uO85y@92z(xA942 zB@Ba^izfe;GoLLTir40Uqtp8ZEAGK3y~$v zE6lBbj$h!}7#Wgez*5X$-^2rdX2D3^-MQ~f7$4r?wnmU*9TwQp2je&Ca+D{6A9D|F z=!ZXm^l-TE;qFK>bbhICgukIdTpmU`ZpVUgRtXYQYSzQ%n+et$Hk zS#UbY$)!EIN89XU-eZ)b*xk&u>70{$YJ@P?2_fEeIA}K6jj3wKk<_GEWdKyl#qsAP+NmvH& zz8Q>BVRLUPXyn1?y%EM^63)pcC7D3q!4d43+z4Ea*D5&i@4>pPA$~g{Qg=}B3+QHN z?og6?@0R!`MYWKnV~3TrHNzV$5Ab#M3;< zOR?Uzm(z`B?>p};P8w@26n$!@)V94hoaxu~aA~Zv!dr6%TSF=3+X$ygk2m`_uo9?$ z7s=H(s%B)wYUu$R&l>Z(GU(;7ZL`0&Yj!0#G_CL$?;ZLV2Ua0NtD}CTdX}colmM|Z zf{t>Cc8B`a&>U2GE3T#lFnrxf|K{C=4@@q((gDCQ!(7Lq$%zX+?B2A5g-k=s6+)4g zI;o6XB}4%Xz&PKsY+vW+{-ESJYiwpqd^^2WaB(rF&b^pp(sypKou#!UWI z`SP9T1p`q=>L*)NUww;-yJCw{?Va}K{t&;USCkOl&-FT3Y?osUSkzA^A8P(a(W7#S zQGHB&8f4_W9oKT}-`&ZGazMnfbaF1W3a!R|<{P!PUDFEbt@^<-*qzqr>U@v|OSMK17TY*Wxk$2^#q~N%Tjn z^n$)RO0!-MV+9v$#qv7Ff!uEp&P74?df(}&7|GtpJrVOEsrYALtJ8*eXM6+HA={;s zo(s0k6lbUOkd8pecb#hW1;TihDCc@+LDwHK95o8bc*1@;&=1^QTAvrDx5Ucw_*B#$ z&)ft?@LGZvI7>?@zvN7t{_R`4JbQt4q$G}7(tve&&Yv7fr|M?Z+3?3bEai?oNL?|J zt(R#$QMpc2HcMa-SHoDkDbMe*(|Lu9#BdlNQy8iw3V zYcXfkQHa6D^zmXSTd??Umao)^=O!@T=rMk|;9QflDYbeVV3 zNcZ^3ghsKx?90b_DfE7mfz34-oHn(~og!4e?}Lr^6jv zNh?@E`I38dNji6K1^j!-uIcgMTsUFw7oQ?rkRX9(#c92Y_k;4!xDqzRM#D3h_hQ@O z@gv^_3PuApKbU0eb8XCz}VLcZlF- z7qj(S>+7>VS9$jA?Mmlx)#n|J3fN~CTNi{gvW&m35w?xxjOJpP`hQ~5;B(YQpT@ng ze@F-?OW!%EBO22v>w)>C*!bIBB*v1Xuv2MruF2_d-CZ)kq{0( zgj)}h5Wqhe0{HLP|G?yJc%IvcT!Jho9ZLrh;N%cb{ z(#LXipKm{xmvMWNFl?1Si7LE^(~H(C!*5f==ZpzHZuo3jx1ynul$5EJ*pGEt!o=8< z^fHOvf+V+xs=Vhta;0tj?J9FxRC{DCgks;#EB(92P@)}nid)(xzd6hW)fXy?ZUn}K zqf$QQAU?Q%VQ=@b#1OeM5IW^P7915p6`KM6hYvyZMG*cwA5;`UMZDlYdx=zapCwRpdM+fnnv%)S)NYXLR5BF`#`7_36**sO0bJ74969k0gtJ=fihpXD3up3i2z-EHis0U< z4=wgJ_|KghR(@Y#pI^d9-#UhN+QVl@h^pN{ z&iy0x(2p#wQ2;+9J&CxA6rLXYsP zk2ViQIrR24uNGpR?IWi8+wR&VnD8e>)9Jtf@v9$NAIsY?}^ylSbm$L6n ze_HgMZXg5RzP+X#+|8=HZ0DkE{he*!kOf;GIA}Y-VjBEqi2?ZQRziTM*4d1U&)cYN zi4V8D5Uy^nHRo||*))&Z@Vt7q#ILAuEhh+QWw!;&%v46|xz8Kh4$L0{mMb4>Dk>ok zUWG82nlVBFzgNN}(i%@TM3B7?IaTAGADmTl`j0FVDjPHFCu2qB#!Xp z3W5d2t$k}mej#z32QW%0+k1@K%DE2AF?|!aAsbu*Hk<||g#F02g1qQd$!UCs1$e%u zG;xAe7GS{hjQw>*W9Zm8@MptgwJ@%i?vW}pC7UcJJLtkd%72q5d7)dFbQj;f?(_j9 z-fKi^>}B)CY1FBHPpnw9{ZcNPvpMz7JjlqzR2z~2J^Z=^u`_VfSlvEcr+;=SlfDH~ zxp12|b4`wvc>7X^Nz(FGktMpdW*%iT`?dtbDJVr!)*`C3UmM zaGnyAl9u4fK9!I?Wj%IxUgb)o*G0GGI(H2m~|2;CeO*CCg9bC)ei^ zt)X$?1NA1EPA%e_DR({4vx&B&)V;rZ%5-y92cf3Rp*+SwM< zyMp;76ZYV_D<0YTIB!(A$I13?kzO~SABgMJg2v820uQK=d+U4kC!VWkklZ@R&Ml@^d%P3{t#z1!WOuUeYDydEAJ~O>@OWC@PAzy zP7Jy_?#HpdeeF^wMZ}}+l~TED@)a`f^cU|UjK%cUu+pmJKvE_d=6K%3E0G6czw#mx z+jiT=l8f6XHN*VOy}|ni7F#=wV;lUD#+W+~G=~T4nM0pw2uyK*nd)D{8tVWNuTnEf z=_&k{vD+csRR;ukZvctk-JOB-#;O8s0Lxcx>Tl-bnIEa?0A^xCy3aa7m_b+I(RU-p4q;B)5yP-k(ru$GmL-nxlveTsbi|1 z(mG)_#L={R=gH;6P_;{u>?mW99nwon-&2plfSP= z*99EU-{~Isy-~a;=*`a^2M$Iv`21MP4=`m-h2e%uG`aZqjIhv3>Lrob+|xnC;|@tN z0a9%Ng>P!YZpH})0HHo`^|2d>cZR4u41CF1lK0u&GO`j1{;qc%V zIQKHuOEmM1aSMg@OJ57oa5YF92QFe^pe3XHHAfJ`{E;P>mPqE!BpG?`0BPfjX3ptU zk`Um5pZrr&)R?{19(&Nk!0=W+NL}$6!VjVj!ruuJ*v8MAEZi$go}Ju5^F%Z1gBA%puPPT2w6fKAvlk*Y%MC zvp=Fx00?R&Ov$CYS1C=yDy(myUYO0F&%a36vm8q4KY5{#G|=to(x}*0R@DSobUziA z<_F9Y*R6YScUo~hHnqNJ-GQdirVVcXRBw*|(LiCb5sTN*;+7q)qOTNMMiCvUyy$MT zUOVN6aYGxp;lWRIkVYe^{5ND_!{s8+aPMUor8I@*5FB3DGvp_ZTWF8pt;&Hip z;8ng|i*Oh%#jBu~goyxe)1wh0VfCtf!%r0HmpB-JBIRU^WF1-6&D;6N^}5je^>4jL zOG;%NWp8TMZDnI|>-;GSE$Kd-R#dT^`D_13YK5F;Lfxv>(3a9sUk%-NOVI2Oms*Z` zR{d1+L@|4K0a{nG-n|Q7xW*|oNv5zp*LBeyy?Ka>Hyw#K&PK*uQjEW3=HL$ScTh4D zbq+=6B83ey&#d21BpQ)mT(YGuEMb#ZCSPgiTFIoE(If{me)5o3D^VOd)?(FoQthkz z5%foLr2jkX^E{IgTfTzxpz)pI)QaHVOH~cO%UbZgkN9Jw50x*p4fgx7%;k|odD@P& zTiBcaRNSlQM2^&1HaeJL3kTmEqr4(}fFikI=8GlV7_-E$K<4+VpG`$81!ipdm|sJV zR%HhRhF`&qUgk1>4ql6>s28d5Ve^p?#kD({qo(m9<=Eayz}jJvS84;~u+wwp_HjGx z&!$=jXO_8j%c$aGex=DUP!4vQ0M55+j(PU<6Uy?LrKb~N=S@G9qY}P^uW`h(^A7R- zfQTCO&p)eikEU^_=HBq)UAcb#UqO@iCF=uA$>9)b4c9&w`)5z_man6sQFBbEEkXKx z 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 z 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 diff --git a/lib/MetaPOD.pm b/lib/MetaPOD.pm index 223bba1..72e595b 100644 --- a/lib/MetaPOD.pm +++ b/lib/MetaPOD.pm @@ -6,7 +6,7 @@ BEGIN { $MetaPOD::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::VERSION = '0.1.2'; + $MetaPOD::VERSION = '0.1.3'; } # ABSTRACT: An evolution of POD @@ -27,7 +27,7 @@ MetaPOD - An evolution of POD =head1 VERSION -version 0.1.2 +version 0.1.3 =begin MetaPOD::JSON v1.0.0 @@ -54,6 +54,18 @@ MetaPOD also is a system by which one can express relationships about code, code =back +=head1 What can MetaPOD do for me + +At present, there is not much built on top of the MetaPOD C, so it is marginally limited. + +And at present, there is not much on C with MetaPOD annotations, so any such functionality is presently limited by that. + +However, for a taste of what we might see with widespread use of MetaPOD, here is what we can easily determine from the present C, with the existing annotations in within MetaPOD itself: http://kentfredric.github.io/MetaPOD/media/self_structure.png + +=for html
+ +=for markdown ![Graphviz Graph of MetaPOD](http://kentfredric.github.io/MetaPOD/media/self_structure.png) + =head1 People who are writing MetaPOD Eventually, the goal is to have the MetaPOD itself able to be generated via tools during development, so that the meta-layer information is cemented into the POD itself, before, or during release. diff --git a/lib/MetaPOD/Assembler.pm b/lib/MetaPOD/Assembler.pm index 8de92b1..c9e0921 100644 --- a/lib/MetaPOD/Assembler.pm +++ b/lib/MetaPOD/Assembler.pm @@ -6,7 +6,7 @@ BEGIN { $MetaPOD::Assembler::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::Assembler::VERSION = '0.1.2'; + $MetaPOD::Assembler::VERSION = '0.1.3'; } # ABSTRACT: Glue layer that dispatches segments to a constructed Result @@ -119,7 +119,7 @@ MetaPOD::Assembler - Glue layer that dispatches segments to a constructed Result =head1 VERSION -version 0.1.2 +version 0.1.3 =head1 SYNOPSIS diff --git a/lib/MetaPOD/Extractor.pm b/lib/MetaPOD/Extractor.pm index 1f1d9bf..39b15a6 100644 --- a/lib/MetaPOD/Extractor.pm +++ b/lib/MetaPOD/Extractor.pm @@ -6,7 +6,7 @@ BEGIN { $MetaPOD::Extractor::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::Extractor::VERSION = '0.1.2'; + $MetaPOD::Extractor::VERSION = '0.1.3'; } # ABSTRACT: Extract MetaPOD declarations from a file. @@ -252,7 +252,7 @@ MetaPOD::Extractor - Extract MetaPOD declarations from a file. =head1 VERSION -version 0.1.2 +version 0.1.3 =head1 METHODS diff --git a/lib/MetaPOD/Format/JSON.pm b/lib/MetaPOD/Format/JSON.pm index d331ba4..e60b6f4 100644 --- a/lib/MetaPOD/Format/JSON.pm +++ b/lib/MetaPOD/Format/JSON.pm @@ -6,7 +6,7 @@ BEGIN { $MetaPOD::Format::JSON::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::Format::JSON::VERSION = '0.1.2'; + $MetaPOD::Format::JSON::VERSION = '0.1.3'; } # ABSTRACT: Reference implementation of a C based MetaPOD Format @@ -117,7 +117,7 @@ MetaPOD::Format::JSON - Reference implementation of a C based MetaPOD Form =head1 VERSION -version 0.1.2 +version 0.1.3 =head1 SYNOPSIS diff --git a/lib/MetaPOD/JSON.pm b/lib/MetaPOD/JSON.pm index 9871f0f..177459e 100644 --- a/lib/MetaPOD/JSON.pm +++ b/lib/MetaPOD/JSON.pm @@ -8,7 +8,7 @@ BEGIN { $MetaPOD::JSON::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::JSON::VERSION = '0.1.2'; + $MetaPOD::JSON::VERSION = '0.1.3'; } @@ -28,7 +28,7 @@ MetaPOD::JSON - The C Formatted MetaPOD Spec =head1 VERSION -version 0.1.2 +version 0.1.3 =head1 SYNOPSIS diff --git a/lib/MetaPOD/Result.pm b/lib/MetaPOD/Result.pm index 9073a4c..3898b40 100644 --- a/lib/MetaPOD/Result.pm +++ b/lib/MetaPOD/Result.pm @@ -7,7 +7,7 @@ BEGIN { $MetaPOD::Result::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::Result::VERSION = '0.1.2'; + $MetaPOD::Result::VERSION = '0.1.3'; } # ABSTRACT: Compiled aggregate result object for MetaPOD @@ -97,7 +97,7 @@ MetaPOD::Result - Compiled aggregate result object for MetaPOD =head1 VERSION -version 0.1.2 +version 0.1.3 =head1 METHODS diff --git a/lib/MetaPOD/Role/Format.pm b/lib/MetaPOD/Role/Format.pm index 18aec84..57241dc 100644 --- a/lib/MetaPOD/Role/Format.pm +++ b/lib/MetaPOD/Role/Format.pm @@ -7,7 +7,7 @@ BEGIN { $MetaPOD::Role::Format::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::Role::Format::VERSION = '0.1.2'; + $MetaPOD::Role::Format::VERSION = '0.1.3'; } # ABSTRACT: Base role for common format routines @@ -55,7 +55,7 @@ MetaPOD::Role::Format - Base role for common format routines =head1 VERSION -version 0.1.2 +version 0.1.3 =head1 METHODS diff --git a/lib/MetaPOD/Spec.pm b/lib/MetaPOD/Spec.pm index 7465959..977e651 100644 --- a/lib/MetaPOD/Spec.pm +++ b/lib/MetaPOD/Spec.pm @@ -6,7 +6,7 @@ BEGIN { $MetaPOD::Spec::AUTHORITY = 'cpan:KENTNL'; } { - $MetaPOD::Spec::VERSION = '0.1.2'; + $MetaPOD::Spec::VERSION = '0.1.3'; } # ABSTRACT: The Specification of the MetaPOD format @@ -26,7 +26,7 @@ MetaPOD::Spec - The Specification of the MetaPOD format =head1 VERSION -version 0.1.2 +version 0.1.3 =begin MetaPOD::JSON v1.0.0 diff --git a/t/self-extract.t b/t/self-extract.t index c8be47d..fcb500a 100644 --- a/t/self-extract.t +++ b/t/self-extract.t @@ -21,11 +21,15 @@ while ( my $file = $it->() ) { my $result; subtest "$rpath" => sub { - is(exception { - $result = $assembler->assemble_file($file); - }, undef, 'Can assemble ' . path($file)->relative($root)); - isa_ok( $result, 'MetaPOD::Result'); - is( $result->namespace , $rpath , "MetaPOD.namespace == $rpath" ); + is( + exception { + $result = $assembler->assemble_file($file); + }, + undef, + 'Can assemble ' . path($file)->relative($root) + ); + isa_ok( $result, 'MetaPOD::Result' ); + is( $result->namespace, $rpath, "MetaPOD.namespace == $rpath" ); }; }