Evaluating Software Design Patterns
— the "Gang of Four" patterns implemented in Java 6
A B C D E F G H I K L M N O P R S T U V W Z

I

IdentifiedStackTraceElement - Class in dk.rode.thesis.meta.reflect
An identified stack trace element is used to identify a stack trace element representing the calling context.
IdentifiedStackTraceElement() - Constructor for class dk.rode.thesis.meta.reflect.IdentifiedStackTraceElement
No-arg constructor, which identifies the stack trace element corresponding to the calling context that invoked this constructor.
IdentifiedStackTraceElement(int) - Constructor for class dk.rode.thesis.meta.reflect.IdentifiedStackTraceElement
Constructor, which identifies the stack trace element at offset from the top of the current call-stack.
IdentifiedStackTraceElement(Throwable, int) - Constructor for class dk.rode.thesis.meta.reflect.IdentifiedStackTraceElement
Constructor, which identifies the stack trace element at offset from the top of the call-stack acquired via throwable; hence, this constructor need not be in the call-stack at all!
IdentifiedStackTraceElement(IdentifiedStackTraceElement) - Constructor for class dk.rode.thesis.meta.reflect.IdentifiedStackTraceElement
Copy constructor, which identifies the same stack trace element as element in the same call-stack at the same offset.
IdentifiedStackTraceElement(IdentifiedStackTraceElement, int) - Constructor for class dk.rode.thesis.meta.reflect.IdentifiedStackTraceElement
Constructor, which identifies the stack trace element at offset in the call-stack used by element.
ImmutableSequence<E> - Class in dk.rode.thesis.proxy
An immutable sequence ensures that invocations of NonResettableSequence.reset(), ImmutableSequence.next(), and ImmutableSequence.copy() are ignored for the proxied sequence if and only if the proxied sequence is accessed through the proxy only.
ImmutableSequence(Sequence<E>) - Constructor for class dk.rode.thesis.proxy.ImmutableSequence
Constructor.
includeHashCode - Variable in class dk.rode.thesis.interpreter.SequenceExpression
True to include the identity hash code of SequenceExpression.sequence in the symbolic representation, false if not.
includeTypeInfo - Variable in class dk.rode.thesis.interpreter.TypedExpressionDecorator
True if the evaluation type of TypedExpressionDecorator.expression will be included in the symbolic representation of it, false if not.
includeTypeInfo - Variable in class dk.rode.thesis.interpreter.VariableExpression
True if the type of this variable will be included in the symbolic representation of it, false if not.
index - Variable in class dk.rode.thesis.command.CompositeCommand
The index identifying the current command being executed or undone.
index - Variable in class dk.rode.thesis.meta.model.ArraySequence
The current index.
index - Variable in class dk.rode.thesis.meta.model.PrimeSequence
The next index to start processing from on calls to PrimeSequence.next().
index - Variable in class dk.rode.thesis.state.ReversiblePrimeSequence
The next index to start processing from on calls to next().
index - Variable in class dk.rode.thesis.templatemethod.SequenceTemplate
The current index into this sequence, used to calculate the size of this sequence.
index() - Method in class dk.rode.thesis.templatemethod.SequenceTemplate
Returns the index of the current sequence value in this sequence.
indexOf(CharSequence, char) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where c is present in cs, or -1 if c cannot be found.
indexOf(CharSequence, char, int) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where c is present in cs after the index supplied, or -1 if c cannot be found.
indexOfIgnoreCase(CharSequence, int, Locale) - Method in class dk.rode.thesis.flyweight.AbstractCharacter
 
indexOfIgnoreCase(Textual<?>, CharSequence, Locale, Log) - Static method in class dk.rode.thesis.flyweight.Main
Finds the indexes of token in textual and logs them to log.
indexOfIgnoreCase(CharSequence, int, Locale) - Method in class dk.rode.thesis.flyweight.Sentence
 
indexOfIgnoreCase(CharSequence, int, Locale) - Method in interface dk.rode.thesis.flyweight.Textual
Finds the first index where sequence is present in this textual representation from the index supplied, regardless of case, or -1 if sequence cannot be found.
indexOfIgnoreCase(CharSequence, int, Locale) - Method in class dk.rode.thesis.flyweight.Word
 
indexOfIgnoreCase(CharSequence, char) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where c is present in cs, regardless of case, or -1 if c cannot be found.
indexOfIgnoreCase(CharSequence, char, int) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where c is present in cs after the index supplied, regardless of case, or -1 if c cannot be found.
indexOfIgnoreCase(CharSequence, CharSequence) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where token is present in cs, regardless of case, or -1 if token cannot be found.
indexOfIgnoreCase(CharSequence, CharSequence, Locale) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where token is present in cs, regardless of case, or -1 if token cannot be found.
indexOfIgnoreCase(CharSequence, CharSequence, int) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where token is present in cs after the index supplied, regardless of case, or -1 if token cannot be found.
indexOfIgnoreCase(CharSequence, CharSequence, int, Locale) - Static method in class dk.rode.thesis.meta.util.Strings
Finds the first index where token is present in cs after the index supplied, regardless of case, or -1 if token cannot be found.
INFINITE - Static variable in class dk.rode.thesis.meta.util.Const
Value indicating that a given otherwise zero or positive number is considered to be infinite.
InitialisableExpression<E> - Interface in dk.rode.thesis.interpreter
An initialisable expression represents an expression that require several steps to be constructed, and hence must be initialised before actual use.
initialise() - Method in class dk.rode.thesis.builder.TypedFlowExpression
 
initialise() - Method in class dk.rode.thesis.interpreter.FlowExpression
 
initialise() - Method in interface dk.rode.thesis.interpreter.InitialisableExpression
Initialises this expression before evaluation.
initialise() - Method in class dk.rode.thesis.interpreter.TypedExpressionDecorator
 
initialise() - Method in class dk.rode.thesis.iterator.LoggingValueProcessor
Resets the internal counter to zero.
initialise() - Method in interface dk.rode.thesis.iterator.ValueProcessor
Prepares this processor before processing.
initialised - Variable in class dk.rode.thesis.interpreter.FlowExpression
True if this expression has been initialised, false if not.
initialiseExpressions(Expression<V>) - Static method in class dk.rode.thesis.builder.AbstractExpressionBuilder
Initialises all initialisable expressions reachable from the expression supplied as expression that has not already been initialised.
instance - Static variable in class dk.rode.thesis.facade.MathFacade
The singleton instance to use.
instance - Static variable in class dk.rode.thesis.prototype.CountdownSequence
Single instance of the sequence, initialised thread-safe at class loading time.
instance - Static variable in class dk.rode.thesis.singleton.NorwegianAlphabetSequence
Single instance of the sequence, initialised thread-safe at class loading time.
instance - Static variable in class dk.rode.thesis.singleton.SimpsonsAndBouvierFamilySequence.Instance
The singleton instance.
instance - Static variable in class dk.rode.thesis.singleton.SimpsonsFamilySequence.Instance
The singleton instance.
instance - Static variable in class dk.rode.thesis.singleton.SmileySequence
Single instance of the sequence, lazily initialised using double-checked locking when first requested.
InstantiableTypeLiteral<T> - Class in dk.rode.thesis.meta.reflect
Represents the instantiable type realised as the type parameter T, where T may be a generic type.
InstantiableTypeLiteral(Class<?>...) - Constructor for class dk.rode.thesis.meta.reflect.InstantiableTypeLiteral
Constructor, which creates this instantiable type literal to represent the type realised by the type parameter T.
InstantiableTypeLiteral(TypeLiteral<T>, Class<?>...) - Constructor for class dk.rode.thesis.meta.reflect.InstantiableTypeLiteral
Constructor, which creates this instantiable type literal to represent the type represented by the type literal typeLiteral.
InstantiableTypeLiteral(InstantiableTypeLiteral<T>) - Constructor for class dk.rode.thesis.meta.reflect.InstantiableTypeLiteral
Copy constructor, which creates this instantiable type literal based on the generic type and constructor represented by typeLiteral
integerValued - Variable in class dk.rode.thesis.visitor.CountingVisitor
Number of visitable sequences that delivered Integer values.
IntegerValuedVisitableSequence - Class in dk.rode.thesis.visitor
An integer valued visitable sequence allows any sequence delivering Integer values to become value visitable using the SequenceValueVisitor.visitIntegerValued(Sequence, Object) visitation method and is type visitable for any known sub-interface of Sequence that is implemented by the sequence.
IntegerValuedVisitableSequence(Sequence<Integer>) - Constructor for class dk.rode.thesis.visitor.IntegerValuedVisitableSequence
Constructor.
IntegrityTests - Class in dk.rode.thesis.meta.test
Sequence integrity tests.
IntegrityTests() - Constructor for class dk.rode.thesis.meta.test.IntegrityTests
 
interfaces - Variable in class dk.rode.thesis.meta.reflect.proxy.ReferenceHandler
All interfaces implemented by ReferenceHandler.reference, including the adapted Reference interface at index zero.
internalProbe(Sequence<?>, Sequence.State) - Method in class dk.rode.thesis.observer.ProbeSequenceObserver
Probes the sequence supplied as sequence, and logs all attributes that has changed value (based on equals(Object)) since the last time this method was invoked with the same sequence (based on equals(Object)) as the first argument.
interpret(Context, Expression<E>) - Method in class dk.rode.thesis.interpreter.Interpreter
Interpret the expression syntax tree having the root supplied as expression, and returns the result.
interpret(Context, Expression<E>, Class<? super E>) - Method in class dk.rode.thesis.interpreter.Interpreter
Interpret the expression syntax tree having the root supplied as expression, and returns the result.
Interpreter<T> - Class in dk.rode.thesis.interpreter
An interpreter can interpret expressions.
Interpreter(Class<T>) - Constructor for class dk.rode.thesis.interpreter.Interpreter
Constructor.
Interpreter(TypeLiteral<T>) - Constructor for class dk.rode.thesis.interpreter.Interpreter
Constructor.
invoke(Object, Method, Object[]) - Method in class dk.rode.thesis.meta.reflect.proxy.ProxyFactory.Handler
Logs each method invoked.
invoke(Object, Method, Object[]) - Method in class dk.rode.thesis.meta.reflect.proxy.ReferenceInvocationHandler
 
invoke(Object, E, Object...) - Static method in class dk.rode.thesis.meta.reflect.Reflection
Returns the result of invoking the accessible member supplied as member.
invoke(Object, Method, Object[]) - Method in class dk.rode.thesis.state.Handler
 
isActive() - Method in class dk.rode.thesis.meta.log.AbstractLog
 
isActive() - Method in interface dk.rode.thesis.meta.log.Log
Returns true if this log is active, i.e. logs messages, false if inactive.
isAssignableFrom(Type, Type, boolean) - Static method in class dk.rode.thesis.meta.reflect.TypeLiteral
Returns true if a is recursively assignable from b, false if not.
isAssignableFromIgnorePrimitives(Class<?>) - Method in enum dk.rode.thesis.meta.util.Primitive
Returns true if the non-primitive type of this enumeration type is assignable from the non-primitive type of type.
isAssignableFromIgnorePrimitives(Class<?>, Class<?>) - Static method in enum dk.rode.thesis.meta.util.Primitive
Returns true if a is assignable from b when primitive primitives are ignored.
isAssignableFromIgnorePrimitives(Class<?>[], Class<?>[]) - Static method in enum dk.rode.thesis.meta.util.Primitive
Returns true if and only if: a and b are both null or identical (==); or a and b contains the same number of elements, and each class in a is assignable from the class in b at the corresponding index ignoring primitives, respectively.
isAssignableToThisClass() - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if the class of the calling context is a class that is assignable to the class representing the immediate calling context, false if not.
isChecked(Throwable) - Static method in class dk.rode.thesis.meta.util.Throwables
Returns true if throwable is a checked exception, false if not.
isClassInCallStack(Object...) - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if just one of the classes fetched from an object in objects is contained in the call-stack of this caller, false if not.
isClosed() - Method in class dk.rode.thesis.templatemethod.SequenceTemplate
Returns true if this sequence has been closed, false if not.
isCompatibleWith(Primitive) - Method in enum dk.rode.thesis.meta.util.Primitive
Returns true if the type supplied as primitive is compatible with this enumeration type, false if not.
isCompatibleWith(Class<?>) - Method in enum dk.rode.thesis.meta.util.Primitive
Returns true if the type corresponding to type is compatible with this enumeration type, false if not.
isConstructor() - Method in class dk.rode.thesis.meta.reflect.Caller
Returns true if the member of the calling context is a constructor or instance initialisation block, false if not.
isEqualIgnorePrimitives(Class<?>) - Method in enum dk.rode.thesis.meta.util.Primitive
Returns true if the non-primitive type of type represents the same non-primitive type as this enumeration type does, false if not.
isEqualIgnorePrimitives(Class<?>, Class<?>) - Static method in enum dk.rode.thesis.meta.util.Primitive
Returns true if and only if: a and b are both null; or a and b have the same non-primitive type.
isEqualIgnorePrimitives(Class<?>[], Class<?>[]) - Static method in enum dk.rode.thesis.meta.util.Primitive
Returns true if and only if: a and b are both null or identical (==); or a and b contains the same number of elements and primitives at the same index in a and b have the same non-primitive type (using equals).
isEscaped(CharSequence, int) - Static method in class dk.rode.thesis.meta.util.Strings
Returns true if the char at index index in the char sequence cs is escaped, false if not.
isEscaped(CharSequence, char, int) - Static method in class dk.rode.thesis.meta.util.Strings
Returns true if the char at index index in the char sequence cs is escaped, false if not.
isInitialised() - Method in class dk.rode.thesis.bridge.SequenceAbstraction
Returns true if a generator has been set for this sequence abstraction, false if not.
isInitialised() - Method in class dk.rode.thesis.builder.TypedFlowExpression
 
isInitialised() - Method in class dk.rode.thesis.interpreter.FlowExpression
 
isInitialised() - Method in interface dk.rode.thesis.interpreter.InitialisableExpression
Returns true if this expression has been initialised, and hence ready to be evaluated, false if not.
isInitialised() - Method in class dk.rode.thesis.interpreter.TypedExpressionDecorator
 
isInstance(Class<?>[], Object...) - Static method in class dk.rode.thesis.meta.reflect.Reflection
Returns true if each value in values is assignable to the corresponding type at the same index in types, respectively, false if not.
isInstance(boolean, Class<?>[], Object...) - Static method in class dk.rode.thesis.meta.reflect.Reflection
Returns true if each value in values is assignable to the corresponding type at the same index in types, respectively, false if not.
isInstatiable(Type) - Static method in class dk.rode.thesis.meta.reflect.InstantiableTypeLiteral
Returns true if the raw type represented by type is instantiable, false if not.
isInstatiable(TypeLiteral<?>) - Static method in class dk.rode.thesis.meta.reflect.InstantiableTypeLiteral
Returns true if the raw type represented by type is instantiable, false if not.
isLowerCase() - Method in class dk.rode.thesis.flyweight.Letter
Returns true if this letter represents a lower case letter, false if not.
isMemberInCallStack(Object...) - Method in class dk.rode.thesis.meta.reflect.Caller
Returns true if just one of the declared methods and constructors fetched from an object in objects is contained in the call-stack of this caller, false if not.
isMemberInCallStack(Member...) - Method in class dk.rode.thesis.meta.reflect.Caller
Returns true if just one of the members supplied in members is contained in the call-stack of this caller, false if not.
isMethod() - Method in class dk.rode.thesis.meta.reflect.Caller
Returns true if the member of the calling context is a method, false if not.
isNestedClass() - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if the class of the calling context is a nested or inner class of the class representing the immediate calling context, false if not.
isOverriding(Class<?>, String, Class<?>...) - Static method in class dk.rode.thesis.meta.reflect.Reflection
Determines if a given accessible non-abstract method is overriding a similar method in a super class based on Java's visibility rules.
isPackageInCallStack(Object...) - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if just one of the packages fetched from an object in objects is contained in the call-stack of this caller, false if not.
isProxied(Object) - Method in class dk.rode.thesis.meta.reflect.proxy.ProxyFactory
Returns true if the object supplied as object is proxied by a proxy created by this factory, false if not.
isProxied(Sequence<?>) - Method in class dk.rode.thesis.proxy.SequenceProxyFactory
Returns true if sequence has at least one created proxy sequence associated with it, false if not.
isProxy(Object) - Method in class dk.rode.thesis.meta.reflect.proxy.ProxyFactory
Returns true if object is a proxy created by this proxy factory, false if not.
isProxy(Sequence<?>) - Method in class dk.rode.thesis.proxy.SequenceProxyFactory
Returns true if sequence is a proxy sequence created by a sequence proxy factory, false if not.
isRegistered(Class<T>) - Method in class dk.rode.thesis.abstractfactory.PrototypicalRegistry
Returns true if a prototypical object is registered for the type supplied as type, false if not.
isRegistered(Handler<R>) - Method in interface dk.rode.thesis.chainofresponsibility.HandlerChain
Returns true if handler is registered to this handler chain, false if not.
isRegistered(Handler<R>) - Method in class dk.rode.thesis.chainofresponsibility.StandardHandlerChain
 
isRegistered(Handler<R>) - Method in class dk.rode.thesis.chainofresponsibility.WeakHandlerChain
 
isSingleton(Class<?>) - Method in interface dk.rode.thesis.singleton.SingletonRegistry
Returns true of the type supplied as type is a singleton type handled by this registry, false if not.
isSingleton(Class<?>) - Method in class dk.rode.thesis.singleton.StatefullSingletonRegistry
 
isSingleton(Class<?>) - Method in class dk.rode.thesis.singleton.StatelessSingletonRegistry
 
isStatic() - Method in class dk.rode.thesis.meta.reflect.Caller
Returns true if the member of the calling context is a static initialiser block, false if not.
isSubClass() - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if the class of the calling context is a sub-class of the class representing the immediate calling context, false if not.
isSubClass(Class<?>, Class<?>) - Static method in class dk.rode.thesis.meta.reflect.Reflection
Returns true if and only if subClass is a sub-class of clazz, false otherwise.
isSuperClass() - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if the class of the calling context is a super-class of the class representing the immediate calling context, false if not.
isSuperClass(Class<?>, Class<?>) - Static method in class dk.rode.thesis.meta.reflect.Reflection
Returns true if and only if superClass is a super-class of clazz, false otherwise.
isThisClass() - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if the class of the calling context is the same class representing the immediate calling context, false if not.
isThisPackage() - Method in class dk.rode.thesis.meta.reflect.CallerClass
Returns true if the class of the calling context is defined in the same package as the class representing the immediate calling context, false if not.
isUndoable() - Method in interface dk.rode.thesis.command.Command
Returns true if this command has been executed and is undoable, false if not.
isUndoable() - Method in class dk.rode.thesis.command.CompositeCommand
 
isUndoable() - Method in class dk.rode.thesis.command.EvilCommand
Returns true.
isUndoable() - Method in class dk.rode.thesis.command.LogCommand
Returns true.
isUndoable() - Method in class dk.rode.thesis.command.NextCommand
Returns true if this command has been executed and the receiving sequence used by this command is either memorizable and/or reversible.
isUndoable() - Method in class dk.rode.thesis.command.NullCommand
Returns true.
isUndoable() - Method in class dk.rode.thesis.command.ResetCommand
Returns true if this command has been executed and the receiving sequence used by this command is either memorizable and/or the sequence is bounded and consistent.
isUndoable() - Method in class dk.rode.thesis.command.ReverseCommand
Returns true if the receiving sequence is reversible, false if not.
isUndoable() - Method in class dk.rode.thesis.command.SequenceCommand
Returns true if this sequence command has been executed and can be undone by this sequence command, false if not.
isUpperCase() - Method in class dk.rode.thesis.flyweight.Letter
Returns true if this letter represents an upper case letter, false if not.
isWhiteSpace() - Method in class dk.rode.thesis.flyweight.Word
Returns true if this word represents a single white space character.
IterableSequence<E> - Class in dk.rode.thesis.iterator
An iterable sequence is a bounded sequence that can be accessed as any other iterable object.
IterableSequence(Sequence<E>) - Constructor for class dk.rode.thesis.iterator.IterableSequence
Constructor, which creates this iterable sequence to iterate through the sequence values from sequence, starting from its current value.
iterate(Log, int, Sequence<V>, int, boolean) - Static method in class dk.rode.thesis.iterator.Main
Iterates over the sequence values in sequence.
iterate(Log, SequenceIterator<V>, int, boolean) - Static method in class dk.rode.thesis.iterator.Main
Iterates over the sequence values delivered indirectly by iterator.
iterate(Log, IterableSequence<V>, int, boolean) - Static method in class dk.rode.thesis.iterator.Main
Iterates over the sequence values delivered by sequence.
iterator - Variable in class dk.rode.thesis.adapter.IteratorSequence
The adapted sequence in form of an SequenceIterator instance: the responsibility is designated to the sequence iterator because it already implements the desired functionality.
iterator - Variable in class dk.rode.thesis.bridge.SequenceValueSet
The current iterator used to deliver the next value in SequenceValueSet.first(), SequenceValueSet.get(), or SequenceValueSet.get(int).
iterator() - Method in class dk.rode.thesis.command.CompositeCommand
Returns an iterator to iterate through this composite command, which is backed by this composite commands, i.e.
iterator() - Method in class dk.rode.thesis.composite.AbstractCompositeSequence
 
iterator() - Method in class dk.rode.thesis.flyweight.Sentence
 
iterator() - Method in class dk.rode.thesis.flyweight.Word
 
iterator() - Method in class dk.rode.thesis.interpreter.Context
Returns an iterator to iterate over all the contained variables and constants stored in this context, in no particular order.
iterator() - Method in class dk.rode.thesis.iterator.IterableSequence
Returns an iterator to iterate over this sequence.
iterator(Sequence<V>) - Static method in class dk.rode.thesis.iterator.SequenceIterator
Creates a new iterator based on sequence.
iterator() - Method in class dk.rode.thesis.meta.reflect.CallerClass
 
iterator() - Method in class dk.rode.thesis.meta.util.Arguments
Returns an iterator that is backed by these arguments.
iterator() - Method in class dk.rode.thesis.singleton.StatefullSingletonRegistry
Returns an iterator to iterate over all singleton instances referenced by this registry.
IteratorSequence<E> - Class in dk.rode.thesis.adapter
An object adapter that adapts a Sequence type to conform to the Iterator type: when the iterator is advanced, so is the sequence - hence the adaptation.
IteratorSequence(Sequence<E>) - Constructor for class dk.rode.thesis.adapter.IteratorSequence
Constructor, which creates this iterator sequence to iterate through the sequence value from sequence, starting from its current value.

Gunni Rode / rode.dk
A B C D E F G H I K L M N O P R S T U V W Z
Feel free to use and/or modify the Java 6 source code developed for this thesis AT YOUR OWN RISK, but note that the source code comes WITHOUT ANY — and I do mean WITHOUT ANY — form of warranty WHAT SO EVER!

The original thesis and source code are available at rode.dk/thesis.