체인의정석

스마트컨트렉트 주석 달기 및 solidity-docgen 사용하기 본문

블록체인/Solidity

스마트컨트렉트 주석 달기 및 solidity-docgen 사용하기

체인의정석 2023. 1. 12. 17:06
728x90
반응형

https://www.npmjs.com/package/solidity-docgen

 

solidity-docgen

Documentation generator for Solidity smart contracts.. Latest version: 0.6.0-beta.34, last published: 13 days ago. Start using solidity-docgen in your project by running `npm i solidity-docgen`. There are 27 other projects in the npm registry using solidit

www.npmjs.com

오픈제플린에서 만들었으며, 주석을 잘 달아놓을 시에 문서도 잘 나오는 것을 확인할 수 있었다.

 

1. 설치

npm i solidity-docgen --save

2. 설정 파일 변경

Hardhat

Include the plugin in your Hardhat configuration.

 // hardhat.config.ts
+import 'solidity-docgen';

 export default {
+  docgen: { ... }, // if necessary to customize config
 };

import만 하면 된다. 밑에는 config 커스터마이징용

 

3. 라이브러리로서 호출도 가능

As a library

import { docgen } from 'solidity-docgen';

await docgen([{ output: solcOutput }], config);

solcOutput must be the standard JSON output of the compiler, with at least the ast output. There can be more than one.

config is an optional object with the values as specified below.

 

solcOutput을 넣어주고 파일을 만들어 주는 식으로 사용이 가능하다.

 

이를 위해서 컨트렉트에 주석을 잘 써주어야하는데 그 방법은

 

https://www.w3schools.io/blockchain/solidity-comments/

 

How to write comments in solidity| Comment types - w3schools

How to write comments in solidity| Comment types

www.w3schools.io

tagsDescriptionused before

@title Contract class or interface title description Class and interface
@author Author name for contract Contract class or interface,function
@notice Enduser note explains what does it do Contract class or interface, function
@dev developer notes about code what does it do Contract class or interface, function
@param parameters to function function
@return return types of an function function

타이틀이나 author는 하나의 컨트렉트 정도에 넣어주면 충분한거 같고

이런식으로 각 파라미터의 값들, 리턴 값들, 개발자를 위한 노트 정도를 각 함수별로 넣어주면 좋다.

주의사항은 notice로 넣어주면 좋다.

 

해당 라이브러리는 오픈 제플린에서 만든 라이브러리 이므로 주석 스타일링은 오픈제플린 예시 코드를 보고 똑같이 해주면 된다.

728x90
반응형
Comments