Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
nebula
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
exchain
nebula
Commits
bae43749
Unverified
Commit
bae43749
authored
Dec 13, 2022
by
Kelvin Fichter
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(ctp): clean AttestationStation comments
Cleans up comments in the AttestationStation.
parent
d30e727f
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
20 deletions
+19
-20
AttestationStation.sol
...riphery/contracts/universal/op-nft/AttestationStation.sol
+19
-20
No files found.
packages/contracts-periphery/contracts/universal/op-nft/AttestationStation.sol
View file @
bae43749
...
...
@@ -4,19 +4,16 @@ pragma solidity 0.8.15;
import { Semver } from "@eth-optimism/contracts-bedrock/contracts/universal/Semver.sol";
/**
* @title AttestationStation
* @dev Contract for creating attestations.
* @notice The AttestationStation contract is a contract for creating on chain attestations
* It has a very simple interface for creating attestations.
* This contract is not yet audited
* @title AttestationStation
* @notice Where attestations live.
*/
contract AttestationStation is Semver {
/**
* @notice
Struct representing data that is being attested
* @notice
Struct representing data that is being attested.
*
* @custom:field about Address
being attested about (not creator/msg.sender)
* @custom:field about Address
for which the attestation is about.
* @custom:field key A bytes32 key for the attestation.
* @custom:field val The attestation as arbitrary bytes
* @custom:field val The attestation as arbitrary bytes
.
*/
struct AttestationData {
address about;
...
...
@@ -25,20 +22,17 @@ contract AttestationStation is Semver {
}
/**
* @notice Maps addresses to attestations
* @dev addresses map to attestations map of
* about addresses to key/values
* key/values are a map of bytes32 to bytes
* @notice Maps addresses to attestations. Creator => About => Key => Value.
*/
mapping(address => mapping(address => mapping(bytes32 => bytes))) public attestations;
/**
* @notice Emitted when Attestation is created
* @notice Emitted when Attestation is created
.
*
* @param creator Address that
attested
.
* @param about Address attestation is about.
* @param key Key of the attestation.
* @param val Value of the attestation.
* @param creator Address that
made the attestation
.
* @param about
Address attestation is about.
* @param key
Key of the attestation.
* @param val
Value of the attestation.
*/
event AttestationCreated(
address indexed creator,
...
...
@@ -47,24 +41,29 @@ contract AttestationStation is Semver {
bytes val
);
/**
* @custom:semver 0.0.1
*/
constructor() Semver(0, 0, 1) {}
/**
* @notice
Attest to the given data
.
*
@dev Attests to the given data from the sender.
* @param
_attestations The
array of attestation data.
* @notice
Allows anyone to create attestations
.
*
* @param
_attestations An
array of attestation data.
*/
function attest(AttestationData[] memory _attestations) public {
uint256 length = _attestations.length;
for (uint256 i = 0; i < length; ) {
AttestationData memory attestation = _attestations[i];
attestations[msg.sender][attestation.about][attestation.key] = attestation.val;
emit AttestationCreated(
msg.sender,
attestation.about,
attestation.key,
attestation.val
);
unchecked {
++i;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment