code: public boolean process(Context context) throws NestingException {
          for(ProcPattern pattern: patterns){
              Context codeContext = new Context(context);
              if (pattern.parse(codeContext)) {
                  if(transparent) {
                      codeContext.mergeWithParent();
                  }
                  template.generate(codeContext);
  
                  if(logContext.isTraceEnabled()){
                      for(Map.Entry<String, CharSequence> entry:context.getAttributes().entrySet()){
                          logContext.trace("Context: {} = {}", entry.getKey(), entry.getValue());
                      }
                  }
  
                  if(logGenerate.isTraceEnabled()){
                      logGenerate.trace("Generated text: {}", codeContext.getTarget());
                  }
  
                  return true;
              }
          }
  
          return false;
      }
docs: Parse bb-code
  
  Before invocation suspicious method must be call
  
  @param context the bb-processing context
  @return true - if parse source
  false - if can't parse code
  @throws NestingException if nesting is too big.