if ( pattern.getSource() != null ) {
context.setAlphaConstraints( alphaConstraints );
final int currentOffset = context.getCurrentPatternOffset();
PatternSource source = pattern.getSource();
ReteooComponentBuilder builder = utils.getBuilderFor( source );
if( builder == null ) {
throw new RuntimeException( "Unknown pattern source type: "+source.getClass()+" for source "+source+" on pattern "+pattern );
}
builder.build( context,
utils,
source );
// restoring offset
context.setCurrentPatternOffset( currentOffset );
} else {
// default entry point
PatternSource source = EntryPoint.DEFAULT;
ReteooComponentBuilder builder = utils.getBuilderFor( source );
builder.build( context, utils, source );
}
if ( pattern.getSource() == null ||