diffson.lcs

package diffson.lcs

Members list

Type members

Classlikes

class DynamicProgLcs[T] extends Lcs[T]

Implementation of the LCS using dynamic programming.

Implementation of the LCS using dynamic programming.

Attributes

Source
DynamicProgLcs.scala
Supertypes
class Lcs[T]
class Object
trait Matchable
class Any
object Hashed

Attributes

Companion
class
Source
HashedLcs.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Hashed.type
class Hashed[T](val value: T)(implicit evidence$2: Eq[T])

Wraps provided value together with its hashCode.

Wraps provided value together with its hashCode. Equals is overridden to first check hashCode and then delegate to the wrapped value.

Value parameters

value

wrapped value

Attributes

Companion
object
Source
HashedLcs.scala
Supertypes
class Object
trait Matchable
class Any
class HashedLcs[T](delegate: Lcs[Hashed[T]])(implicit evidence$1: Eq[T]) extends Lcs[T]

Speeds up LCS computations by pre-computing hashes for all objects.

Speeds up LCS computations by pre-computing hashes for all objects. Very useful for objects that recompute hashCodes on each invocation.

Value parameters

delegate

Decorated LCS implementation.

Attributes

Source
HashedLcs.scala
Supertypes
class Lcs[T]
class Object
trait Matchable
class Any
abstract class Lcs[T]

The interface to classes that computes the longest common subsequence between two sequences of elements

The interface to classes that computes the longest common subsequence between two sequences of elements

Attributes

Source
Lcs.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class DynamicProgLcs[T]
class HashedLcs[T]
class Patience[T]
class Patience[T](withFallback: Boolean)(implicit evidence$1: Eq[T]) extends Lcs[T]

Implementation of the patience algorithm [1] to compute the longest common subsequence

Implementation of the patience algorithm [1] to compute the longest common subsequence

[1] http://alfedenzo.livejournal.com/170301.html

Value parameters

withFallback

whether to fallback to classic LCS when patience could not find the LCS

Attributes

Source
Patience.scala
Supertypes
class Lcs[T]
class Object
trait Matchable
class Any