8080 LibraryArgumentDefinition ,
8181 NativeValue ,
8282 SourceEntity ,
83+ cached_method ,
8384 single_call ,
8485)
8586
@@ -362,7 +363,8 @@ def __hash__(self) -> int:
362363 )
363364 )
364365
365- def to_markdown (self , header_level : int = 2 ) -> str :
366+ @cached_method
367+ def to_markdown (self , header_level : int = 2 , only_doc : bool = False ) -> str :
366368 result = ""
367369
368370 result += f"##{ '#' * header_level } { self .name } ({ self .type } )\n \n "
@@ -378,19 +380,22 @@ def to_markdown(self, header_level: int = 2) -> str:
378380 else :
379381 result += self .doc
380382
381- if self .members :
382- result += f"\n \n ###{ '#' * header_level } Allowed Values:\n \n "
383- result += "- " + "\n - " .join (f"`{ m .name } `" for m in self .members )
384-
385- if self .items :
386- result += f"\n \n ###{ '#' * header_level } Dictionary Structure:\n \n "
387- result += "```\n {"
388- result += "\n " .join (f"'{ m .key } ': <{ m .type } > { '# optional' if not m .required else '' } " for m in self .items )
389- result += "\n }\n ```"
383+ if not only_doc :
384+ if self .members :
385+ result += f"\n \n ###{ '#' * header_level } Allowed Values:\n \n "
386+ result += "- " + "\n - " .join (f"`{ m .name } `" for m in self .members )
387+
388+ if self .items :
389+ result += f"\n \n ###{ '#' * header_level } Dictionary Structure:\n \n "
390+ result += "```\n {"
391+ result += "\n " .join (
392+ f"'{ m .key } ': <{ m .type } > { '# optional' if not m .required else '' } " for m in self .items
393+ )
394+ result += "\n }\n ```"
390395
391- if self .accepts :
392- result += f"\n \n ###{ '#' * header_level } Converted Types:\n \n "
393- result += "- " + "\n - " .join (self .accepts )
396+ if self .accepts :
397+ result += f"\n \n ###{ '#' * header_level } Converted Types:\n \n "
398+ result += "- " + "\n - " .join (self .accepts )
394399
395400 return result
396401
@@ -475,6 +480,7 @@ def from_robot(arg: Any) -> ArgumentInfo:
475480 def __str__ (self ) -> str :
476481 return self .signature ()
477482
483+ @cached_method
478484 def signature (self , add_types : bool = True ) -> str :
479485 prefix = ""
480486 if self .kind == KeywordArgumentKind .POSITIONAL_ONLY_MARKER :
@@ -721,6 +727,7 @@ def range(self) -> Range:
721727 ),
722728 )
723729
730+ @cached_method
724731 def to_markdown (
725732 self ,
726733 add_signature : bool = True ,
@@ -796,7 +803,7 @@ def escape_pipe(s: str) -> str:
796803
797804 result += (
798805 f"\n | `{ prefix } { a .name !s} `"
799- f' | { ": " if a .types else " " } '
806+ f" | { ': ' if a .types else ' ' } "
800807 f"{ escaped_pipe .join (f'`{ escape_pipe (s )} `' for s in a .types ) if a .types else '' } "
801808 f"| { '=' if a .default_value is not None else '' } "
802809 f"| { f'`{ a .default_value !s} `' if a .default_value else '' } |"
@@ -832,6 +839,7 @@ def signature(self) -> str:
832839 + ")"
833840 )
834841
842+ @cached_method
835843 def parameter_signature (self , full_signatures : Optional [Sequence [int ]] = None ) -> str :
836844 return (
837845 "("
@@ -1094,6 +1102,7 @@ def range(self) -> Range:
10941102 ),
10951103 )
10961104
1105+ @cached_method
10971106 def to_markdown (
10981107 self ,
10991108 add_signature : bool = True ,
@@ -1250,6 +1259,7 @@ class VariablesDoc(LibraryDoc):
12501259
12511260 variables : List [ImportedVariableDefinition ] = field (default_factory = list )
12521261
1262+ @cached_method
12531263 def to_markdown (
12541264 self ,
12551265 add_signature : bool = True ,
0 commit comments