Class: Nanoc::CodeSnippet

Inherits:
Object
  • Object
show all
Defined in:
lib/nanoc/base/source_data/code_snippet.rb

Overview

Nanoc::CodeSnippet represent a piece of custom code of a nanoc site.

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Constructor Details

- (CodeSnippet) initialize(data, filename, _params = nil)

Creates a new code snippet.

Parameters:

  • data (String)

    The raw source code which will be executed before compilation

  • filename (String)

    The filename corresponding to this code snippet

  • _params (Time, Hash) (defaults to: nil)

    Extra parameters. Ignored by nanoc; it is only included for backwards compatibility.



25
26
27
28
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 25

def initialize(data, filename, _params = nil)
  @data     = data
  @filename = filename
end

Instance Attribute Details

- (String) data (readonly)

A string containing the actual code in this code snippet.

Returns:



9
10
11
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 9

def data
  @data
end

- (String) filename (readonly)

The filename corresponding to this code snippet.

Returns:



14
15
16
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 14

def filename
  @filename
end

Instance Method Details

- (String) checksum

Returns The checksum for this object. If its contents change, the checksum will change as well.

Returns:

  • (String)

    The checksum for this object. If its contents change, the checksum will change as well.



50
51
52
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 50

def checksum
  Nanoc::Checksummer.calc(self)
end

- (Object) inspect



44
45
46
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 44

def inspect
  "<#{self.class} filename=\"#{filename}\">"
end

- (void) load

This method returns an undefined value.

Loads the code by executing it.



33
34
35
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 33

def load
  eval(@data, TOPLEVEL_BINDING, @filename)
end

- (Object) reference

Returns an object that can be used for uniquely identifying objects.

Returns:

  • (Object)

    An unique reference to this object



40
41
42
# File 'lib/nanoc/base/source_data/code_snippet.rb', line 40

def reference
  [:code_snippet, filename]
end