module Slinky

Constants

BUILD_DIRECTIVES
CSS_URL_MATCHER
DEPENDS_DIRECTIVE
DIRECTIVE_FILES

extensions of non-compiled files that can contain build directives

EXTENSION_REGEX
EXTERNAL_DEPENDS_DIRECTIVE
PRODUCT_DIRECTIVE
REQUIRE_DIRECTIVE
SCRIPTS_DIRECTIVE
STYLES_DIRECTIVE

Public Class Methods

all_paths_costs(p1, p2) click to toggle source
static VALUE all_paths_costs(VALUE module, VALUE rsize, VALUE distArray)
{
    int size = FIX2INT(rsize);
    int distArrayLen = size*size;

    // Create copy of distArray
    int cDistArray[distArrayLen];
    int i, k, j;
    for (i = 0; i < distArrayLen; i++) {
        cDistArray[i] = FIX2INT(rb_ary_entry(distArray, i));
    }

    for (k = 0; k < size; k++) {
        for (i = 0; i < size; i++) {
            for (j = 0; j < size; j++) {
                if (cDistArray[size*i+j] > cDistArray[size*i+k] + cDistArray[size*k+j]) {
                    cDistArray[size*i+j] = cDistArray[size*i+k] + cDistArray[size*k+j];
                }
            }
        }
    }

    // Copy cDistArray back into distArray
    for (i = 0; i < distArrayLen; i++) {
        rb_ary_store(distArray, i, INT2FIX(cDistArray[i]));
    }

    return distArray;
}