Module: Slinky

Defined in:
lib/slinky/graph.rb,
lib/slinky/errors.rb,
lib/slinky/runner.rb,
lib/slinky/server.rb,
lib/slinky/builder.rb,
lib/slinky/listener.rb,
lib/slinky/manifest.rb,
lib/slinky/compilers.rb,
lib/slinky/live_reload.rb,
lib/slinky/proxy_server.rb,
lib/slinky/compiled_file.rb,
lib/slinky/config_reader.rb,
lib/slinky/compilers/jsx-compiler.rb,
lib/slinky/compilers/haml-compiler.rb,
lib/slinky/compilers/less-compiler.rb,
lib/slinky/compilers/sass-compiler.rb,
lib/slinky/pure_transitive_closure.rb,
lib/slinky/compilers/coffee-compiler.rb,
lib/slinky/compilers/typescript-compiler.rb,
lib/slinky/compilers/clojurescript-compiler.rb

Defined Under Namespace

Modules: ClojureScriptCompiler, CoffeeCompiler, HamlCompiler, JSXCompiler, LessCompiler, ProxyServer, SassCompiler, Server, TypescriptCompiler Classes: BuildFailedError, Builder, CompiledFile, Compilers, ConfigReader, DependencyError, FileNotFoundError, Graph, InvalidConfigError, Listener, LiveReload, Manifest, ManifestDir, ManifestFile, MultiError, NoSuchProductError, Runner, SlinkyError

Constant Summary collapse

DIRECTIVE_FILES =

extensions of non-compiled files that can contain build directives

%w{js css html}
DEPENDS_DIRECTIVE =
/^[^\n\w]*(slinky_depends)\((".*"|'.+'|)\)[^\n\w]*$/
EXTERNAL_DEPENDS_DIRECTIVE =
/^[^\n\w]*(slinky_depends_external)\((".*"|'.+'|)\)[^\n\w]*$/
REQUIRE_DIRECTIVE =
/^[^\n\w]*(slinky_require)\((".*"|'.+'|)\)[^\n\w]*$/
SCRIPTS_DIRECTIVE =
/^[^\n\w]*(slinky_scripts)[^\n\w]*$/
STYLES_DIRECTIVE =
/^[^\n\w]*(slinky_styles)[^\n\w]*$/
PRODUCT_DIRECTIVE =
/^[^\n\w]*(slinky_product)\((".*"|'.+'|)\)[^\n\w]*$/
BUILD_DIRECTIVES =
Regexp.union(DEPENDS_DIRECTIVE,
EXTERNAL_DEPENDS_DIRECTIVE,
REQUIRE_DIRECTIVE,
SCRIPTS_DIRECTIVE,
STYLES_DIRECTIVE,
PRODUCT_DIRECTIVE)
CSS_URL_MATCHER =
/url\(['"]?([^'"\/][^\s)]+\.[a-z]+)(\?\d+)?['"]?\)/
EXTENSION_REGEX =
/(.+)\.(\w+)/

Class Method Summary collapse

Class Method Details

.all_paths_costs(size, dist) ⇒ Object

Pure ruby implementation of all paths cost for a graph



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/slinky/pure_transitive_closure.rb', line 3

def self.all_paths_costs size, dist
  size.times{|k|
    size.times{|i|
      size.times{|j|
        if dist[size * i + j] > dist[size * i + k] + dist[size * k + j]
          dist[size * i + j] = dist[size * i + k] + dist[size * k + j]
        end
      }
    }
  }
end