Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include package type and body memeber functions #79

Open
lwasylow opened this issue Jun 5, 2018 · 4 comments
Open

Include package type and body memeber functions #79

lwasylow opened this issue Jun 5, 2018 · 4 comments

Comments

@lwasylow
Copy link

lwasylow commented Jun 5, 2018

Is there a chance to include a type specs and body to be analyzed for member procedures , constructors etc. ?

E,g,

  • member procedure print_red_text(self in out nocopy ut_console_reporter_base, a_text varchar2)
  • constructor function ut_executable
  • map member function pk return varchar2
  • overriding member procedure after_calling_run

I had a look and was hoping its just a matter of modify regex in dox.js but I'm no js expert and seems like it didnt work :)

@martindsouza
Copy link
Member

@lwasylow we support type tags. For the other options can you please provide code snippets for them and how you'd like the documentation to work?

@lwasylow
Copy link
Author

lwasylow commented Jun 5, 2018

Of course
We have a sample type and type body:

create or replace type ut_console_reporter_base under ut_output_reporter_base(
  static procedure set_color_enabled(a_flag boolean),

  member procedure print_red_text(self in out nocopy ut_console_reporter_base, a_text varchar2),

  member procedure print_green_text(self in out nocopy ut_console_reporter_base, a_text varchar2),

  member procedure print_yellow_text(self in out nocopy ut_console_reporter_base, a_text varchar2),

  member procedure print_blue_text(self in out nocopy ut_console_reporter_base, a_text varchar2),

  member procedure print_cyan_text(self in out nocopy ut_console_reporter_base, a_text varchar2),

  member procedure print_magenta_text(self in out nocopy ut_console_reporter_base, a_text varchar2)

) not final not instantiable
/

create or replace type body ut_console_reporter_base is
  static procedure set_color_enabled(a_flag boolean) is
  begin
    ut_ansiconsole_helper.color_enabled(a_flag);
  end;

  member procedure print_red_text(self in out nocopy ut_console_reporter_base, a_text varchar2) is
  begin
    self.print_text(ut_ansiconsole_helper.red(a_text));
  end;

  member procedure print_green_text(self in out nocopy ut_console_reporter_base, a_text varchar2) is
  begin
    self.print_text(ut_ansiconsole_helper.green(a_text));
  end;

  member procedure print_yellow_text(self in out nocopy ut_console_reporter_base, a_text varchar2) is
  begin
    self.print_text(ut_ansiconsole_helper.yellow(a_text));
  end;

  member procedure print_blue_text(self in out nocopy ut_console_reporter_base, a_text varchar2) is
  begin
    self.print_text(ut_ansiconsole_helper.red(a_text));
  end;

  member procedure print_cyan_text(self in out nocopy ut_console_reporter_base, a_text varchar2) is
  begin
    self.print_text(ut_ansiconsole_helper.cyan(a_text));
  end;

  member procedure print_magenta_text(self in out nocopy ut_console_reporter_base, a_text varchar2) is
  begin
    self.print_text(ut_ansiconsole_helper.magenta(a_text));
  end;

end;
/

I would like to see that type create as a md page (as currently is when config includes tps|tpb) however under that page would like to see listed member procedures and functions sames as per package functionality pretty much (so variables,exceptions etc.).
Now this might be pushing it but the types can inherit (under) so maybe new section as well in md to saying where inherit from e.g.

@jgebal
Copy link

jgebal commented Jun 5, 2018

Documentation for inheritance would be super-useful. It's pretty hard to get an overview of inherited fields and methods in IDEs

@jgebal
Copy link

jgebal commented Jun 5, 2018

Even a link to parent type would be great.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants