Sha256: b55b3a0ba9ddf9ad6f2552d4c08e77b5ee536cef459ed3ccca2a0f8609b5bbcb

Contents?: true

Size: 1.75 KB

Versions: 20

Compression:

Stored size: 1.75 KB

Contents

<content:page>
	<?r
	base = self[:base]
	node = self[:node]
	symbol = self[:symbol]
	document.attributes[:title] ||= symbol.qualified_name
	?>

	<h1>
		<code class="language-#{symbol.language.name}">#{symbol.short_form}</code>
	</h1>
	
	<?r
	if document = base.document_for(symbol)
		?>#{document.to_html}<?r
	elsif text = symbol.documentation&.text
		?>#{base.format(text.join("\n"), symbol)}<?r
	end
	?>
	#{partial 'content:signature', symbol: symbol}
	<?r
	nested = node.children.map do |name, child|
		base.best(child.values)
	end.select do |symbol|
		symbol.container?
	end
	
	if nested.any?
	?>
	<section>
		<h2>Nested</h2>
		
		<ul>
			<?r nested.each do |symbol| ?>
			<li><a href="#{base.link_for(symbol)}"><code class="language-#{symbol.language.name}">#{symbol.nested_name}</code></a></li>
			<?r end ?>
		</ul>
	</section>
	<?r
	end
	
	definitions = node.children.map do |name, child|
		child.values.select{|symbol| symbol.documentation and !symbol.container?}
	end.flatten

	if definitions.any?
	?>
	<section>
		<h2>Definitions</h2>
		
		<?r
		definitions.each do |symbol|
			if symbol.documentation and !symbol.container?
				?><section id="#{base.id_for(symbol)}"><h3><code class="language-#{symbol.language.name}">#{symbol.long_form}</code></h3><?r
				
				if documentation = symbol.documentation
					?>#{partial 'content:pragmas', symbol: symbol}<?r
					?>#{base.format(documentation.text, symbol)}<?r
					?>#{partial 'content:signature', symbol: symbol}<?r
				end
				
				if symbol.multiline?
				?><details>
						<summary><h4>Implementation</h4></summary>
						<pre><code class="language-#{symbol.language.name}">#{symbol.text}</code></pre>
					</details><?r
				end
				?></section><?r
			end
		end
		?>
	</section>
	<?r
	end
	?>
	<content:discuss/>
</content:page>

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
utopia-project-0.33.1 pages/source/show.xnode
utopia-project-0.33.0 pages/source/show.xnode
utopia-project-0.32.0 pages/source/show.xnode
utopia-project-0.31.0 pages/source/show.xnode
utopia-project-0.30.1 pages/source/show.xnode
utopia-project-0.30.0 pages/source/show.xnode
utopia-project-0.29.0 pages/source/show.xnode
utopia-project-0.28.1 pages/source/show.xnode
utopia-project-0.28.0 pages/source/show.xnode
utopia-project-0.27.0 pages/source/show.xnode
utopia-project-0.26.1 pages/source/show.xnode
utopia-project-0.26.0 pages/source/show.xnode
utopia-project-0.25.0 pages/source/show.xnode
utopia-project-0.24.1 pages/source/show.xnode
utopia-project-0.24.0 pages/source/show.xnode
utopia-project-0.23.0 pages/source/show.xnode
utopia-project-0.22.0 pages/source/show.xnode
utopia-project-0.21.0 pages/source/show.xnode
utopia-project-0.20.3 pages/source/show.xnode
utopia-project-0.20.2 pages/source/show.xnode