refactor: move brother_node development artifact to dev/test-nodes subdirectory
Development Artifact Cleanup: ✅ BROTHER_NODE REORGANIZATION: Moved development test node to appropriate location - dev/test-nodes/brother_node/: Moved from root directory for better organization - Contains development configuration, test logs, and test chain data - No impact on production systems - purely development/testing artifact ✅ DEVELOPMENT ARTIFACTS IDENTIFIED: - Chain ID: aitbc-brother-chain (test/development chain) - Ports: 8010 (P2P) and 8011 (RPC) - different from production - Environment: .env file with test configuration - Logs: rpc.log and node.log from development testing session (March 15, 2026) ✅ ROOT DIRECTORY CLEANUP: Removed development clutter from production directory - brother_node/ moved to dev/test-nodes/brother_node/ - Root directory now contains only production-ready components - Development artifacts properly organized in dev/ subdirectory DIRECTORY STRUCTURE IMPROVEMENT: 📁 dev/test-nodes/: Development and testing node configurations 🏗️ Root Directory: Clean production structure with only essential components 🧪 Development Isolation: Test environments separated from production BENEFITS: ✅ Clean Production Directory: No development artifacts in root ✅ Better Organization: Development nodes grouped in dev/ subdirectory ✅ Clear Separation: Production vs development environments clearly distinguished ✅ Maintainability: Easier to identify and manage development components RESULT: Successfully moved brother_node development artifact to dev/test-nodes/ subdirectory, cleaning up the root directory while preserving development testing environment for future use.
This commit is contained in:
183
dev/env/node_modules/@openzeppelin/contracts/utils/TransientSlot.sol
generated
vendored
Executable file
183
dev/env/node_modules/@openzeppelin/contracts/utils/TransientSlot.sol
generated
vendored
Executable file
@@ -0,0 +1,183 @@
|
||||
// SPDX-License-Identifier: MIT
|
||||
// OpenZeppelin Contracts (last updated v5.3.0) (utils/TransientSlot.sol)
|
||||
// This file was procedurally generated from scripts/generate/templates/TransientSlot.js.
|
||||
|
||||
pragma solidity ^0.8.24;
|
||||
|
||||
/**
|
||||
* @dev Library for reading and writing value-types to specific transient storage slots.
|
||||
*
|
||||
* Transient slots are often used to store temporary values that are removed after the current transaction.
|
||||
* This library helps with reading and writing to such slots without the need for inline assembly.
|
||||
*
|
||||
* * Example reading and writing values using transient storage:
|
||||
* ```solidity
|
||||
* contract Lock {
|
||||
* using TransientSlot for *;
|
||||
*
|
||||
* // Define the slot. Alternatively, use the SlotDerivation library to derive the slot.
|
||||
* bytes32 internal constant _LOCK_SLOT = 0xf4678858b2b588224636b8522b729e7722d32fc491da849ed75b3fdf3c84f542;
|
||||
*
|
||||
* modifier locked() {
|
||||
* require(!_LOCK_SLOT.asBoolean().tload());
|
||||
*
|
||||
* _LOCK_SLOT.asBoolean().tstore(true);
|
||||
* _;
|
||||
* _LOCK_SLOT.asBoolean().tstore(false);
|
||||
* }
|
||||
* }
|
||||
* ```
|
||||
*
|
||||
* TIP: Consider using this library along with {SlotDerivation}.
|
||||
*/
|
||||
library TransientSlot {
|
||||
/**
|
||||
* @dev UDVT that represents a slot holding an address.
|
||||
*/
|
||||
type AddressSlot is bytes32;
|
||||
|
||||
/**
|
||||
* @dev Cast an arbitrary slot to a AddressSlot.
|
||||
*/
|
||||
function asAddress(bytes32 slot) internal pure returns (AddressSlot) {
|
||||
return AddressSlot.wrap(slot);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev UDVT that represents a slot holding a bool.
|
||||
*/
|
||||
type BooleanSlot is bytes32;
|
||||
|
||||
/**
|
||||
* @dev Cast an arbitrary slot to a BooleanSlot.
|
||||
*/
|
||||
function asBoolean(bytes32 slot) internal pure returns (BooleanSlot) {
|
||||
return BooleanSlot.wrap(slot);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev UDVT that represents a slot holding a bytes32.
|
||||
*/
|
||||
type Bytes32Slot is bytes32;
|
||||
|
||||
/**
|
||||
* @dev Cast an arbitrary slot to a Bytes32Slot.
|
||||
*/
|
||||
function asBytes32(bytes32 slot) internal pure returns (Bytes32Slot) {
|
||||
return Bytes32Slot.wrap(slot);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev UDVT that represents a slot holding a uint256.
|
||||
*/
|
||||
type Uint256Slot is bytes32;
|
||||
|
||||
/**
|
||||
* @dev Cast an arbitrary slot to a Uint256Slot.
|
||||
*/
|
||||
function asUint256(bytes32 slot) internal pure returns (Uint256Slot) {
|
||||
return Uint256Slot.wrap(slot);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev UDVT that represents a slot holding a int256.
|
||||
*/
|
||||
type Int256Slot is bytes32;
|
||||
|
||||
/**
|
||||
* @dev Cast an arbitrary slot to a Int256Slot.
|
||||
*/
|
||||
function asInt256(bytes32 slot) internal pure returns (Int256Slot) {
|
||||
return Int256Slot.wrap(slot);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Load the value held at location `slot` in transient storage.
|
||||
*/
|
||||
function tload(AddressSlot slot) internal view returns (address value) {
|
||||
assembly ("memory-safe") {
|
||||
value := tload(slot)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Store `value` at location `slot` in transient storage.
|
||||
*/
|
||||
function tstore(AddressSlot slot, address value) internal {
|
||||
assembly ("memory-safe") {
|
||||
tstore(slot, value)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Load the value held at location `slot` in transient storage.
|
||||
*/
|
||||
function tload(BooleanSlot slot) internal view returns (bool value) {
|
||||
assembly ("memory-safe") {
|
||||
value := tload(slot)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Store `value` at location `slot` in transient storage.
|
||||
*/
|
||||
function tstore(BooleanSlot slot, bool value) internal {
|
||||
assembly ("memory-safe") {
|
||||
tstore(slot, value)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Load the value held at location `slot` in transient storage.
|
||||
*/
|
||||
function tload(Bytes32Slot slot) internal view returns (bytes32 value) {
|
||||
assembly ("memory-safe") {
|
||||
value := tload(slot)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Store `value` at location `slot` in transient storage.
|
||||
*/
|
||||
function tstore(Bytes32Slot slot, bytes32 value) internal {
|
||||
assembly ("memory-safe") {
|
||||
tstore(slot, value)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Load the value held at location `slot` in transient storage.
|
||||
*/
|
||||
function tload(Uint256Slot slot) internal view returns (uint256 value) {
|
||||
assembly ("memory-safe") {
|
||||
value := tload(slot)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Store `value` at location `slot` in transient storage.
|
||||
*/
|
||||
function tstore(Uint256Slot slot, uint256 value) internal {
|
||||
assembly ("memory-safe") {
|
||||
tstore(slot, value)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Load the value held at location `slot` in transient storage.
|
||||
*/
|
||||
function tload(Int256Slot slot) internal view returns (int256 value) {
|
||||
assembly ("memory-safe") {
|
||||
value := tload(slot)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Store `value` at location `slot` in transient storage.
|
||||
*/
|
||||
function tstore(Int256Slot slot, int256 value) internal {
|
||||
assembly ("memory-safe") {
|
||||
tstore(slot, value)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user