price_feed.move 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. module pyth::price_feed {
  2. use pyth::price_identifier::PriceIdentifier;
  3. use pyth::price::Price;
  4. /// PriceFeed represents a current aggregate price for a particular product.
  5. struct PriceFeed has copy, drop, store {
  6. /// The price identifier
  7. price_identifier: PriceIdentifier,
  8. /// The current aggregate price
  9. price: Price,
  10. /// The current exponentially moving average aggregate price
  11. ema_price: Price,
  12. }
  13. public fun new(
  14. price_identifier: PriceIdentifier,
  15. price: Price,
  16. ema_price: Price): PriceFeed {
  17. PriceFeed {
  18. price_identifier: price_identifier,
  19. price: price,
  20. ema_price: ema_price,
  21. }
  22. }
  23. public fun get_price_identifier(price_feed: &PriceFeed): &PriceIdentifier {
  24. &price_feed.price_identifier
  25. }
  26. public fun get_price(price_feed: &PriceFeed): Price {
  27. price_feed.price
  28. }
  29. public fun get_ema_price(price_feed: &PriceFeed): Price {
  30. price_feed.ema_price
  31. }
  32. }