oikai_build_apiref() – Automatically create the API reference

You appear to be a bot. Output may be restricted

Description

Automatically create the API reference

Create the API reference information for:

  • Short and long description
  • Usage
  • Parameters
  • Return
  • TO DO(s)
  • Sourcefile

Then show the dynamically generated Syntax

Usage

oikai_build_apiref( $funcname, $sourcefile, $plugin_slug, $classname, $post_id, $echo, $plugin_id );

Parameters

$funcname
( string ) required – the function name – @TODO which may be classname::funcname
$sourcefile
( string ) required – the source file
$plugin_slug
( string ) required default: oik – the plugin slug
$classname
( string ) required – the class name for a method
$post_id
( ID ) required – the post ID for the "api"
$echo
( bool ) required default: 1 – true if we actually want the source to be listed
$plugin_id
( ID ) required – the post ID for the plugin or theme

Returns

void

Source

File name: oik-shortcodes/shortcodes/oik-api-importer.php
Lines:

1 to 27 of 27
function oikai_build_apiref( $funcname, $sourcefile=null, $plugin_slug="oik", $classname=null, $post_id, $echo=true, $plugin_id ) {
  $func = oikai_get_func( $funcname, $classname );
  bw_context( "func", $func );
  $class = oikai_get_class( $funcname, $classname );
  bw_context( "classname", $class );
  // p( "Class: $class" );
  $refFunc = oikai_pseudo_reflect( $func, $sourcefile, $plugin_slug, $class );
  if ( $refFunc ) {
    if ( $echo ) {
      $docblock = oikai_reflect_docblock( $refFunc );
      oikai_reflect_descriptions( $docblock );
      oikai_reflect_usage( $refFunc, $docblock, $funcname );
      oikai_reflect_parameters( $refFunc, $docblock );
      oikai_print_return( $refFunc, $docblock );
      oikai_print_todos( $refFunc, $docblock );
      oikai_reflect_filename( $refFunc, $sourcefile, $plugin_slug );
      //bw_flush();
      //bw_push();
    }
    oik_require( "admin/oik-apis.php", "oik-shortcodes" );
    $component_type = oiksc_query_component_type( $plugin_slug );
    $source = oikai_listsource( $refFunc, $post_id, $plugin_slug, $component_type, $echo );
    oikai_external_links( $sourcefile, $plugin_slug, $post_id, $plugin_id, $refFunc );
  } else { 
    p( "No API information available for: " . $funcname );
  }  
}