private void processRenderFunction ( ) { if ( ! hasInterface ( processingEnv , component . asType ( ) , HasRender . class ) ) { return ; } componentExposedTypeBuilder . addMethod ( MethodSpec . methodBuilder ( "vg$render" ) . addModifiers ( Modifier . PUBLIC ) . addAnnotation ( JsMethod . class ) . returns ( VNode . class ) . addParameter ( CreateElementFunction . class , "createElementFunction" ) . addStatement ( "return super.render(new $T(createElementFunction))" , VNodeBuilder . class ) . build ( ) ) ; addMethodToProto ( "vg$render" ) ; // Register the render method optionsBuilder . addStatement ( "options.addHookMethod($S, p.$L)" , "render" , "vg$render" ) ; }
Process the render function from the Component Class if it has one .