I tried compile my contract for about 2 days now. I keep getting the error: ParserError: Expected pragma, import directive or contract/interface/library/struct/enum/constant/function/error definition.--> project:/contracts/Donation.sol:57:5:|57 | }| ^but i can't figure out what is wrong with my code. Anyone to assist me.
my code:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
contract DonationContract {
struct Donation {
string pickupAddress;
string pickupDate;
string pickupTime;
string availabilityDate;
string pickupHours;
string itemType;
string otherItem;
string itemDescription;
uint quantity;
string requiresRefrigeration;
string bestConsumedDate;
string partialDonation;
}
Donation[] public donations;
function createDonation(
string memory _pickupAddress,
string memory _pickupDate,
string memory _pickupTime,
string memory _availabilityDate,
string memory _pickupHours,
string memory _itemType,
string memory _otherItem,
string memory _itemDescription,
uint _quantity,
string memory _requiresRefrigeration,
string memory _bestConsumedDate,
string memory _partialDonation
)
public {
Donation memory newDonation = Donation(
_pickupAddress,
_pickupDate,
_pickupTime,
_availabilityDate,
_pickupHours,
_itemType,
_otherItem,
_itemDescription,
_quantity,
_requiresRefrigeration,
_bestConsumedDate,
_partialDonation
);
donations.push(newDonation);
}
function getDonationCount() public view returns (uint){
return donations.length;
}
}
trying to save the content of a form to blockchain after a user fill it. i am new solidity