//Write your own contracts here. Currently compiles using solc v0.4.15+commit.bbb8e64f. pragma solidity ^0.4.18; contract LibraryContract { struct Book { uint id; string bookTitle; bool isBorrowed; address borrower; } mapping (uint => Book) public book; uint incrementBookId; function addBook(string _bookTitle) public { incrementBookId++; book[incrementBookId] = Book(incrementBookId, _bookTitle, false, address(0)); } function borrowBook(uint _bookId) public { require(book[_bookId].isBorrowed == false); book[_bookId] = Book(incrementBookId, book[_bookId].bookTitle, true, msg.sender); } function returnBook(uint _bookId) public { require(book[_bookId].isBorrowed == true); book[_bookId] = Book(incrementBookId, book[_bookId].bookTitle, false, msg.sender); } }
0.4.24