Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Need free VS tool which generates code documentation for me!

Need free VS tool which generates code documentation for me!

Scheduled Pinned Locked Moved The Lounge
visual-studio
37 Posts 18 Posters 1 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Jo_vb net

    Thank you. Looks good but does not catch my return value?

    /// Gets the hand trump cards.
    /// The trump card identifier.
    /// ///     
    /// 
    public List GetHandTrumpCards(int TrumpCardID)
    {
        var lopc = new List();
    
        foreach (PlayingCard card in Cards)
        {
            if ((int)card.CardType == TrumpCardID | (int)card.CardValue == 2 | (int)card.CardValue == 3)
            {
                lopc.Add(card);
            }
        }
    
        return lopc;
    }
    
    J Offline
    J Offline
    Jacquers
    wrote on last edited by
    #5

    Check what config options it has.

    J 1 Reply Last reply
    0
    • J Jacquers

      Check what config options it has.

      J Offline
      J Offline
      Jo_vb net
      wrote on last edited by
      #6

      Probably not an options thing. It just does not fill the return section. The GhostDoc Comment editor shows:

      Quote:

      public List GetHandTrumpCards( int TrumpCardID ) Parameters TrumpCardIDType: Int32 The trump card identifier. Return Value

      1 Reply Last reply
      0
      • J Jo_vb net

        Can you please suggest me a free VS tool which generates code documentation like that:

            /// /// Called to calc a bid
            /// 
            /// 
            /// 
            /// iRatedBid\[player\]
            private int CalcBid(HandCards hand, int player)
        
        L Offline
        L Offline
        Lost User
        wrote on last edited by
        #7

        Have you tried the compiler option: /doc (Process Documentation Comments) (C/C++) | Microsoft Learn[^] ?

        J M 2 Replies Last reply
        0
        • L Lost User

          Have you tried the compiler option: /doc (Process Documentation Comments) (C/C++) | Microsoft Learn[^] ?

          J Offline
          J Offline
          Jo_vb net
          wrote on last edited by
          #8

          No I did not, because I was not aware of it. Thank will try it.

          1 Reply Last reply
          0
          • J Jo_vb net

            Can you please suggest me a free VS tool which generates code documentation like that:

                /// /// Called to calc a bid
                /// 
                /// 
                /// 
                /// iRatedBid\[player\]
                private int CalcBid(HandCards hand, int player)
            
            0 Offline
            0 Offline
            0x01AA
            wrote on last edited by
            #9

            This is not code documentation, these are just unnecessary comments ;P :laugh:

            D T 2 Replies Last reply
            0
            • L Lost User

              Have you tried the compiler option: /doc (Process Documentation Comments) (C/C++) | Microsoft Learn[^] ?

              M Offline
              M Offline
              Maximilien
              wrote on last edited by
              #10

              this processes existing comments. it does not create the comments themselves.

              CI/CD = Continuous Impediment/Continuous Despair

              L 1 Reply Last reply
              0
              • 0 0x01AA

                This is not code documentation, these are just unnecessary comments ;P :laugh:

                D Offline
                D Offline
                den2k88
                wrote on last edited by
                #11

                Extremely necessary if you want your SPICE or ASPICE certification.

                GCS/GE d--(d) s-/+ a C+++ U+++ P-- L+@ E-- W+++ N+ o+ K- w+++ O? M-- V? PS+ PE Y+ PGP t+ 5? X R+++ tv-- b+(+++) DI+++ D++ G e++ h--- r+++ y+++*      Weapons extension: ma- k++ F+2 X The shortest horror story: On Error Resume Next

                1 Reply Last reply
                0
                • M Maximilien

                  this processes existing comments. it does not create the comments themselves.

                  CI/CD = Continuous Impediment/Continuous Despair

                  L Offline
                  L Offline
                  Lost User
                  wrote on last edited by
                  #12

                  Of course it does, it needs the comments to convert them to document format. Which is what the OP asked for in his question.

                  1 Reply Last reply
                  0
                  • 0 0x01AA

                    This is not code documentation, these are just unnecessary comments ;P :laugh:

                    T Offline
                    T Offline
                    TNCaver
                    wrote on last edited by
                    #13

                    If those comments/methods are in a class library those comments could be very helpful to folks using that library.

                    There are no solutions, only trade-offs.
                       - Thomas Sowell

                    A day can really slip by when you're deliberately avoiding what you're supposed to do.
                       - Calvin (Bill Watterson, Calvin & Hobbes)

                    L J 2 Replies Last reply
                    0
                    • J Jo_vb net

                      Can you please suggest me a free VS tool which generates code documentation like that:

                          /// /// Called to calc a bid
                          /// 
                          /// 
                          /// 
                          /// iRatedBid\[player\]
                          private int CalcBid(HandCards hand, int player)
                      
                      M Offline
                      M Offline
                      Malte Klena
                      wrote on last edited by
                      #14

                      Sandcastle: SHFB

                      1 Reply Last reply
                      0
                      • T TNCaver

                        If those comments/methods are in a class library those comments could be very helpful to folks using that library.

                        There are no solutions, only trade-offs.
                           - Thomas Sowell

                        A day can really slip by when you're deliberately avoiding what you're supposed to do.
                           - Calvin (Bill Watterson, Calvin & Hobbes)

                        L Offline
                        L Offline
                        lmoelleb
                        wrote on last edited by
                        #15

                        The autogenerated comments will just tell you what you already see from the name and types. Documentation is for the things you can't see directly. Personally my preferce is not having the autogenerated comment, then you do not need to waste time finding out if it tells you anything or not.

                        T 1 Reply Last reply
                        0
                        • J Jo_vb net

                          Can you please suggest me a free VS tool which generates code documentation like that:

                              /// /// Called to calc a bid
                              /// 
                              /// 
                              /// 
                              /// iRatedBid\[player\]
                              private int CalcBid(HandCards hand, int player)
                          
                          R Offline
                          R Offline
                          Ravi Bhavnani
                          wrote on last edited by
                          #16

                          Doesn't triple clicking "/" in VS generate the comment block? /ravi

                          My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

                          1 Reply Last reply
                          0
                          • J Jo_vb net

                            Thank you. Looks good but does not catch my return value?

                            /// Gets the hand trump cards.
                            /// The trump card identifier.
                            /// ///     
                            /// 
                            public List GetHandTrumpCards(int TrumpCardID)
                            {
                                var lopc = new List();
                            
                                foreach (PlayingCard card in Cards)
                                {
                                    if ((int)card.CardType == TrumpCardID | (int)card.CardValue == 2 | (int)card.CardValue == 3)
                                    {
                                        lopc.Add(card);
                                    }
                                }
                            
                                return lopc;
                            }
                            
                            T Offline
                            T Offline
                            trønderen
                            wrote on last edited by
                            #17

                            The return value is not uniquely named. A method may have several return statements, and the values may be expressions, possibly different expression for each of several returns. The tool could of course create a list of all return statements. The same that you can obtain by a string search. I am not sure how useful that would be.

                            Religious freedom is the freedom to say that two plus two make five.

                            J 1 Reply Last reply
                            0
                            • T trønderen

                              The return value is not uniquely named. A method may have several return statements, and the values may be expressions, possibly different expression for each of several returns. The tool could of course create a list of all return statements. The same that you can obtain by a string search. I am not sure how useful that would be.

                              Religious freedom is the freedom to say that two plus two make five.

                              J Offline
                              J Offline
                              Jo_vb net
                              wrote on last edited by
                              #18

                              Do you say it works only for return value;

                              T 1 Reply Last reply
                              0
                              • L lmoelleb

                                The autogenerated comments will just tell you what you already see from the name and types. Documentation is for the things you can't see directly. Personally my preferce is not having the autogenerated comment, then you do not need to waste time finding out if it tells you anything or not.

                                T Offline
                                T Offline
                                trønderen
                                wrote on last edited by
                                #19

                                I took this to be a framework for filling in you more descriptive comments, such as Set of cards currently held by 'bidder' (I can imagine even more helpful explanations that this, especially if I knew more of the context.) Without any explanation, just formatting the method prototype in a different layout, is meaningless.

                                Religious freedom is the freedom to say that two plus two make five.

                                1 Reply Last reply
                                0
                                • J Jo_vb net

                                  Do you say it works only for return value;

                                  T Offline
                                  T Offline
                                  trønderen
                                  wrote on last edited by
                                  #20

                                  I never used this tool, but OP presents an example where it doesn't catch his 'return lopc;', leaving only

                                  /// ///
                                  ///

                                  in the 'documentation'. I am one of those who likes to get out of here as soon as the job is done; I detest the 'single exit point' style that could increase the block nesting level by half a dozen or more. In other words: Some methods can have half a dozen or more return statements. You might want to have them all listed above the method prototype; I think it messes it up. With several exits, the reason for leading to that exit is frequently far more essential than the exit value - especially if it is in the class of 'success' or 'failure'! Seeing four 'return failure' and two 'return success' in the documentation is not really informative. Seeing 'return lopc' makes very little sense until you have studied the actual code, seeing how lopc is built, but then you hardly need the documentation telling that lopc is returned! If you use the template for filling in a brief explanation of what it takes to succeed, or in this case, what is the semantics of the subset of cards returned: Fine. I assume it applies to all the return statements, if there are several. Also, those insisting on 'single exit point' must refrain from coding any exception that might propagate out of the method. That would be an exit not through that 'single exit point', so trusting that you can catch everything immediately before your single 'return' is fooling yourself.

                                  Religious freedom is the freedom to say that two plus two make five.

                                  1 Reply Last reply
                                  0
                                  • J Jo_vb net

                                    Can you please suggest me a free VS tool which generates code documentation like that:

                                        /// /// Called to calc a bid
                                        /// 
                                        /// 
                                        /// 
                                        /// iRatedBid\[player\]
                                        private int CalcBid(HandCards hand, int player)
                                    
                                    Graeme_GrantG Offline
                                    Graeme_GrantG Offline
                                    Graeme_Grant
                                    wrote on last edited by
                                    #21

                                    I tend to do my comments by hand. In VS, if you type /// it usually does the framework for you, including params and return types. Here is a handy reference for the recommendations and also XML tags: Documentation comments - document APIs using /// comments - C# | Microsoft Learn[^]. The link also includes Tools that accept XML documentation input[^] for generating documentation.

                                    Graeme


                                    "I fear not the man who has practiced ten thousand kicks one time, but I fear the man that has practiced one kick ten thousand times!" - Bruce Lee

                                    J 1 Reply Last reply
                                    0
                                    • Graeme_GrantG Graeme_Grant

                                      I tend to do my comments by hand. In VS, if you type /// it usually does the framework for you, including params and return types. Here is a handy reference for the recommendations and also XML tags: Documentation comments - document APIs using /// comments - C# | Microsoft Learn[^]. The link also includes Tools that accept XML documentation input[^] for generating documentation.

                                      Graeme


                                      "I fear not the man who has practiced ten thousand kicks one time, but I fear the man that has practiced one kick ten thousand times!" - Bruce Lee

                                      J Offline
                                      J Offline
                                      Jo_vb net
                                      wrote on last edited by
                                      #22

                                      VS refuses return info as well for me. And comment "Nons the trump cards." is pointless.

                                          /// /// Nons the trump cards.
                                          /// 
                                          /// The hand.
                                          /// The trump identifier.
                                          /// 
                                          public static string NonTrumpCards(HandCards hand, int TrumpID)
                                          {
                                      
                                              return hand.GetHandExTrumpString(TrumpID);
                                      
                                          }
                                      
                                      Graeme_GrantG P 2 Replies Last reply
                                      0
                                      • J Jo_vb net

                                        VS refuses return info as well for me. And comment "Nons the trump cards." is pointless.

                                            /// /// Nons the trump cards.
                                            /// 
                                            /// The hand.
                                            /// The trump identifier.
                                            /// 
                                            public static string NonTrumpCards(HandCards hand, int TrumpID)
                                            {
                                        
                                                return hand.GetHandExTrumpString(TrumpID);
                                        
                                            }
                                        
                                        Graeme_GrantG Offline
                                        Graeme_GrantG Offline
                                        Graeme_Grant
                                        wrote on last edited by
                                        #23

                                        Hmmm... Try this extension: Extended XML Doc Comments Provider (VS2022+) - Visual Studio Marketplace[^]

                                        Graeme


                                        "I fear not the man who has practiced ten thousand kicks one time, but I fear the man that has practiced one kick ten thousand times!" - Bruce Lee

                                        J 1 Reply Last reply
                                        0
                                        • J Jo_vb net

                                          VS refuses return info as well for me. And comment "Nons the trump cards." is pointless.

                                              /// /// Nons the trump cards.
                                              /// 
                                              /// The hand.
                                              /// The trump identifier.
                                              /// 
                                              public static string NonTrumpCards(HandCards hand, int TrumpID)
                                              {
                                          
                                                  return hand.GetHandExTrumpString(TrumpID);
                                          
                                              }
                                          
                                          P Offline
                                          P Offline
                                          Peter Adam
                                          wrote on last edited by
                                          #24

                                          >And comment "Nons the trump cards." is pointless. Not necessarily. Change the XML comment style to font color red, bold, and voila, you can scroll through your code with all information needed visible in the same place, same style. Side note: My Delphi 7 maintenance mode has three colors, bold red for comments, bold green for strings and bold/normal gray for the rest, on black background. It is perfect to find where to modify the code.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups