आरेख · 01
आर्किटेक्चर: स्तर और परतें
रिपॉज़िटरी के दो स्तर, मानक की चार परतें और प्रत्येक निर्भरता की दिशा।
स्तर
मानक की चार परतें
flowchart TB
L3["परत 3 · IARexAttest<br/>attest · revokeAttestation · isAttested · प्रत्येक विषय के लिए विश्वसनीय जारीकर्ता"]
L2["परत 2 · IARexHook + IARexHookManager<br/>hookFlags · check → bytes32 · onExecuted · getHooks"]
L1["परत 1 · IARexBatch<br/>createBatch · batchOf · setBatchStatus · setBatchMetadata · transform · parentsOf"]
L0["परत 0 · ERC-1155 + ERC-165 + IERC7943MultiToken<br/>freeze · forcedTransfer · canSend · canReceive · canTransfer"]
L3 --- L2 --- L1 --- L0
classDef l3 fill:#edf5ff,stroke:#0f62fe,color:#161616
classDef l2 fill:#d0e2ff,stroke:#0f62fe,color:#161616
classDef l1 fill:#a6c8ff,stroke:#0f62fe,color:#161616
classDef l0 fill:#78a9ff,stroke:#0043ce,color:#161616
class L3 l3
class L2 l2
class L1 l1
class L0 l0रिपॉज़िटरी के दो स्तर और निर्भरता की दिशा
flowchart LR
STD["<b>मानक</b><br/>standard/ · contracts/standard/<br/>नॉर्मेटिव · CC0"]
REF["<b>संदर्भ कार्यान्वयन</b><br/>ARexToken · ARexAttestations<br/>MIT"]
DEMO["<b>प्रदर्शन</b><br/>7 हुक · 3 एक्सटेंशन<br/>MIT · नॉर्मेटिव नहीं"]
STD -->|इसके द्वारा कार्यान्वित| REF -->|इसके द्वारा प्रदर्शित| DEMO
DEMO -.->|केवल इंटरफ़ेस पर निर्भर| STDमानक किसी पर निर्भर नहीं करता। संदर्भ टोकन मानक और OpenZeppelin पर निर्भर करता है। हुक और एक्सटेंशन केवल मानक इंटरफ़ेस पर निर्भर करते हैं, ARexToken पर कभी नहीं: इन सभी को हटा दें और एक अनुरूप टोकन बना रहता है।
संदर्भ कार्यान्वयन का घटक दृश्य
classDiagram
class IARexBatch { <<interface>> }
class IARexHook { <<interface>> }
class IARexHookManager { <<interface>> }
class IARexAttest { <<interface>> }
class IERC7943MultiToken { <<interface>> }
class ARexToken {
+createBatch()
+transform()
+setBatchStatus()
+forcedTransfer()
+setFrozenTokens()
+registerHook()
+transferCheck()
-_update()
}
class ARexAttestations {
+attest()
+revokeAttestation()
+isAttested()
+setTrustedIssuer()
}
IERC7943MultiToken <|.. ARexToken
IARexBatch <|.. ARexToken
IARexHookManager <|.. ARexToken
IARexAttest <|.. ARexAttestations
ARexToken --> "0..n" IARexHook : क्रमबद्ध पाइपलाइन
ARexAttestations --> IARexBatch : बैच मौजूद है?
IARexHook <|.. EligibilityHook
IARexHook <|.. ExpiryHook
IARexHook <|.. AttestationHook
IARexHook <|.. PerishabilityHook
IARexHook <|.. SeasonalHook
IARexHook <|.. DeliveryHook
IARexHook <|.. TraceabilityHook
AttestationHook --> IARexAttest : isAttested
CarbonImmobilizationWrapper --> IARexAttest : attest
ParametricInsurance --> IARexAttest : isAttested