<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DZone Snippets: make-blank-value code</title>
    <link>http://snippets.dzone.com/posts</link>
    <pubDate>Sat, 17 May 2008 18:20:45 GMT</pubDate>
    <description>DZone Snippets: make-blank-value code</description>
    <item>
      <title>dup, make-blank-value, and shift functions</title>
      <link>http://snippets.dzone.com/posts/show/1120</link>
      <description>&lt;code&gt;&lt;br /&gt;    ; used in SHIFT below&lt;br /&gt;	dup: func [value len [integer!] /local type] [&lt;br /&gt;        type: either series? value [value] [either char? value [""] [[]]]&lt;br /&gt;		head insert/only/dup make type len value len&lt;br /&gt;	]&lt;br /&gt;&lt;br /&gt;    ; used in SHIFT below&lt;br /&gt;    make-blank-value: func [type] [&lt;br /&gt;        any [&lt;br /&gt;            attempt [make type 0]&lt;br /&gt;            attempt [make type ""]&lt;br /&gt;            attempt [make type []]&lt;br /&gt;            attempt [make type none]&lt;br /&gt;        ]&lt;br /&gt;    ]&lt;br /&gt;&lt;br /&gt;    shift: func [&lt;br /&gt;        "Shift values in a series; length doesn't change."&lt;br /&gt;        series [series!]&lt;br /&gt;        /left   "Shift left (the default)"&lt;br /&gt;        /right  "Shift right"&lt;br /&gt;        /part range [number!] "Shift this many positions"  ; TBD series! support?&lt;br /&gt;        /with fill "Fill vacated slots with this value"&lt;br /&gt;        /local pad&lt;br /&gt;    ][&lt;br /&gt;        range: any [range 1]&lt;br /&gt;        if any [empty? series  0 = range] [return series]&lt;br /&gt;        pad: dup any [fill make-blank-value last series] range&lt;br /&gt;        either right [&lt;br /&gt;            head insert head clear skip tail series negate range pad&lt;br /&gt;        ][&lt;br /&gt;            append remove/part series range pad&lt;br /&gt;        ]&lt;br /&gt;    ]&lt;br /&gt;&lt;/code&gt;</description>
      <pubDate>Tue, 10 Jan 2006 06:11:44 GMT</pubDate>
      <guid>http://snippets.dzone.com/posts/show/1120</guid>
      <author>gregg.irwin (Gregg Irwin)</author>
    </item>
  </channel>
</rss>
