doc::func_multirow (private, deprecated)

 doc::func_multirow package_name result_ref [ db ]

Defined in packages/acs-content-repository/tcl/doc-procs.tcl

Deprecated. Invoking this procedure generates a warning.

Return a multirow datatsource for all the functions { value value ... }

Parameters:
package_name (required)
result_ref (required)
db (optional)

Partial Call Graph (max 5 caller/called nodes):
%3 ad_log_deprecated ad_log_deprecated (public) db_multirow db_multirow (public) doc::func_multirow doc::func_multirow doc::func_multirow->ad_log_deprecated doc::func_multirow->db_multirow

Testcases:
No testcase defined.
Source code:
ad_log_deprecated proc doc::func_multirow

    upvar "${result_ref}:rowcount" result_rowcount
    set result_rowcount 0

    # Get each line that contains "procedure" or "function" in it
    # Pretty risky... The like query should be improved to return 
    # fewer false matches
    db_multirow result get_functions "" {

      # Only insert a row into the datasource if it looks like a procedure
      # or function definition
      # Maybe this should ignore comments, too ? [^-]* at the beginning
      if { [regexp {(procedure|function)[^a-zA-Z0-9_]*([a-zA-Z0-9_]+)}  $line_header match type name] && 
       ![regexp {\-\-} $line_header match]} {
        incr result_rowcount
        upvar "${result_ref}:${result_rowcount}" result_row
        set result_row(rownum) $result_rowcount
        set result_row(type) [string totitle $type]
        set result_row(name) [string tolower $name]
      }
    }
XQL Not present:
Generic
PostgreSQL XQL file:
<fullquery name="doc::func_multirow.get_functions">
    <querytext>

        select 
          'function ' || substr(proname,length(:package_name)+3) as line_header
        from 
          pg_proc 
        where 
          proname like lower(:package_name) || '\\\_\\\_%' 
        order by 
          line_header
  
    
      </querytext>
</fullquery>
packages/acs-content-repository/tcl/doc-procs-postgresql.xql

Oracle XQL file:
<fullquery name="doc::func_multirow.get_functions">
    <querytext>

      select distinct 
        lower(text) as line_header 
      from 
        user_source
      where 
        type='PACKAGE'
      and
        lower(name) = lower(:package_name)
      and (
          lower(text) like '%procedure%'
        or
          lower(text) like '%function%'
      )
      order by line_header

    
      </querytext>
</fullquery>
packages/acs-content-repository/tcl/doc-procs-oracle.xql

[ hide source ] | [ make this the default ]
Show another procedure: