org.kiama.rewriting

MemoRewriterTests

class MemoRewriterTests extends RewriterTests

Tests of memoising rewriting.

Source
MemoRewriterTests.scala
Linear Supertypes
RewriterTests, Generator, Checkers, Configuration, Tests, BeforeAndAfter, SuiteMixin, FunSuiteLike, Documenting, Alerting, Notifying, Informing, Suite, Serializable, AbstractSuite, Assertions, TripleEquals, TripleEqualsSupport, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. MemoRewriterTests
  2. RewriterTests
  3. Generator
  4. Checkers
  5. Configuration
  6. Tests
  7. BeforeAndAfter
  8. SuiteMixin
  9. FunSuiteLike
  10. Documenting
  11. Alerting
  12. Notifying
  13. Informing
  14. Suite
  15. Serializable
  16. AbstractSuite
  17. Assertions
  18. TripleEquals
  19. TripleEqualsSupport
  20. AnyRef
  21. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MemoRewriterTests()

Type Members

  1. class AssertionsHelper extends AnyRef

    Definition Classes
    Assertions
  2. class CheckingEqualizer[L] extends AnyRef

    Definition Classes
    TripleEqualsSupport
  3. class Equalizer[L] extends AnyRef

    Definition Classes
    TripleEqualsSupport
  4. abstract class Expecting extends AnyRef

    The kind of comparison that is expected to be true for a test.

  5. class LegacyCheckingEqualizer[L] extends AnyRef

    Definition Classes
    TripleEqualsSupport
  6. class LegacyEqualizer[L] extends AnyRef

    Definition Classes
    TripleEqualsSupport
  7. case class MaxDiscarded extends PropertyCheckConfigParam with Product with Serializable

    Definition Classes
    Configuration
  8. case class MaxSize extends PropertyCheckConfigParam with Product with Serializable

    Definition Classes
    Configuration
  9. case class MinSize extends PropertyCheckConfigParam with Product with Serializable

    Definition Classes
    Configuration
  10. case class MinSuccessful extends PropertyCheckConfigParam with Product with Serializable

    Definition Classes
    Configuration
  11. trait NoArgTest extends () ⇒ Outcome with TestData

    Attributes
    protected
    Definition Classes
    Suite
  12. case class PropertyCheckConfig extends Product with Serializable

    Definition Classes
    Configuration
  13. sealed abstract class PropertyCheckConfigParam extends AnyRef

    Definition Classes
    Configuration
  14. case class Workers extends PropertyCheckConfigParam with Product with Serializable

    Definition Classes
    Configuration

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. def !==[T](right: Spread[T]): TripleEqualsInvocationOnSpread[T]

    Definition Classes
    TripleEqualsSupport
  3. def !==(right: Null): TripleEqualsInvocation[Null]

    Definition Classes
    TripleEqualsSupport
  4. def !==[T](right: T): TripleEqualsInvocation[T]

    Definition Classes
    TripleEqualsSupport
  5. final def ##(): Int

    Definition Classes
    AnyRef → Any
  6. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  7. def ===[T](right: Spread[T]): TripleEqualsInvocationOnSpread[T]

    Definition Classes
    TripleEqualsSupport
  8. def ===(right: Null): TripleEqualsInvocation[Null]

    Definition Classes
    TripleEqualsSupport
  9. def ===[T](right: T): TripleEqualsInvocation[T]

    Definition Classes
    TripleEqualsSupport
  10. object Equal extends Expecting with Product with Serializable

    Definition Classes
    RewriterTests
  11. object FocusTest extends Tag

    A ScalaTest tag that enables us to focus attention on particular tests rather than running all of them each time.

  12. object NotSame extends Expecting with Product with Serializable

    Definition Classes
    RewriterTests
  13. object Same extends Expecting with Product with Serializable

    Definition Classes
    RewriterTests
  14. def after(fun: ⇒ Any): Unit

    Attributes
    protected
    Definition Classes
    BeforeAndAfter
  15. def alert: Alerter

    Attributes
    protected
    Definition Classes
    FunSuiteLike → Alerting
  16. implicit def arbAsgn: Arbitrary[Asgn]

    Definition Classes
    Generator
  17. implicit def arbExp: Arbitrary[Exp]

    Definition Classes
    Generator
  18. implicit def arbNum: Arbitrary[Num]

    Definition Classes
    Generator
  19. implicit def arbSeqn: Arbitrary[Seqn]

    Definition Classes
    Generator
  20. implicit def arbStmt: Arbitrary[Stmt]

    Definition Classes
    Generator
  21. implicit def arbWhile: Arbitrary[While]

    Definition Classes
    Generator
  22. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  23. macro def assert(condition: Boolean, clue: Any): Unit

    Definition Classes
    Assertions
  24. macro def assert(condition: Boolean): Unit

    Definition Classes
    Assertions
  25. def assertMessage(messaging: Messaging, index: Int, message: Message): Unit

    Assert that a message at index was produced at a given position.

    Assert that a message at index was produced at a given position.

    Definition Classes
    Tests
  26. def assertMessages(messaging: Messaging, messages: (Int, Message)*): Unit

    Assert that the given messsaging object has recorded the given messages.

    Assert that the given messsaging object has recorded the given messages.

    Definition Classes
    Tests
  27. def assertNotSame(expected: Any)(actual: Any): Unit

    Analogous to ScalaTest's assertResult but it uses same to compare the two values instead of equality.

    Analogous to ScalaTest's assertResult but it uses same to compare the two values instead of equality.

    Definition Classes
    Tests
  28. def assertResult(expected: Any)(actual: Any): Unit

    Definition Classes
    Assertions
  29. def assertResult(expected: Any, clue: Any)(actual: Any): Unit

    Definition Classes
    Assertions
  30. def assertSame(expected: Any)(actual: Any): Unit

    Analogous to ScalaTest's assertResult but it uses same to compare the two values instead of equality.

    Analogous to ScalaTest's assertResult but it uses same to compare the two values instead of equality.

    Definition Classes
    Tests
  31. macro def assertTypeError(code: String): Unit

    Definition Classes
    Assertions
  32. val assertionsHelper: AssertionsHelper

    Definition Classes
    Assertions
  33. macro def assume(condition: Boolean, clue: Any): Unit

    Definition Classes
    Assertions
  34. macro def assume(condition: Boolean): Unit

    Definition Classes
    Assertions
  35. val atob: Strategy

  36. def before(fun: ⇒ Any): Unit

    Attributes
    protected
    Definition Classes
    BeforeAndAfter
  37. def cancel(cause: Throwable): Nothing

    Definition Classes
    Assertions
  38. def cancel(message: String, cause: Throwable): Nothing

    Definition Classes
    Assertions
  39. def cancel(message: String): Nothing

    Definition Classes
    Assertions
  40. def cancel(): Nothing

    Definition Classes
    Assertions
  41. def check(p: Prop, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig): Unit

    Definition Classes
    Checkers
  42. def check(p: Prop, prms: Parameters): Unit

    Definition Classes
    Checkers
  43. def check[A1, A2, A3, A4, A5, A6, P](f: (A1, A2, A3, A4, A5, A6) ⇒ P, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig, p: (P) ⇒ Prop, a1: Arbitrary[A1], s1: Shrink[A1], pp1: (A1) ⇒ Pretty, a2: Arbitrary[A2], s2: Shrink[A2], pp2: (A2) ⇒ Pretty, a3: Arbitrary[A3], s3: Shrink[A3], pp3: (A3) ⇒ Pretty, a4: Arbitrary[A4], s4: Shrink[A4], pp4: (A4) ⇒ Pretty, a5: Arbitrary[A5], s5: Shrink[A5], pp5: (A5) ⇒ Pretty, a6: Arbitrary[A6], s6: Shrink[A6], pp6: (A6) ⇒ Pretty): Unit

    Definition Classes
    Checkers
  44. def check[A1, A2, A3, A4, A5, P](f: (A1, A2, A3, A4, A5) ⇒ P, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig, p: (P) ⇒ Prop, a1: Arbitrary[A1], s1: Shrink[A1], pp1: (A1) ⇒ Pretty, a2: Arbitrary[A2], s2: Shrink[A2], pp2: (A2) ⇒ Pretty, a3: Arbitrary[A3], s3: Shrink[A3], pp3: (A3) ⇒ Pretty, a4: Arbitrary[A4], s4: Shrink[A4], pp4: (A4) ⇒ Pretty, a5: Arbitrary[A5], s5: Shrink[A5], pp5: (A5) ⇒ Pretty): Unit

    Definition Classes
    Checkers
  45. def check[A1, A2, A3, A4, P](f: (A1, A2, A3, A4) ⇒ P, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig, p: (P) ⇒ Prop, a1: Arbitrary[A1], s1: Shrink[A1], pp1: (A1) ⇒ Pretty, a2: Arbitrary[A2], s2: Shrink[A2], pp2: (A2) ⇒ Pretty, a3: Arbitrary[A3], s3: Shrink[A3], pp3: (A3) ⇒ Pretty, a4: Arbitrary[A4], s4: Shrink[A4], pp4: (A4) ⇒ Pretty): Unit

    Definition Classes
    Checkers
  46. def check[A1, A2, A3, P](f: (A1, A2, A3) ⇒ P, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig, p: (P) ⇒ Prop, a1: Arbitrary[A1], s1: Shrink[A1], pp1: (A1) ⇒ Pretty, a2: Arbitrary[A2], s2: Shrink[A2], pp2: (A2) ⇒ Pretty, a3: Arbitrary[A3], s3: Shrink[A3], pp3: (A3) ⇒ Pretty): Unit

    Definition Classes
    Checkers
  47. def check[A1, A2, P](f: (A1, A2) ⇒ P, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig, p: (P) ⇒ Prop, a1: Arbitrary[A1], s1: Shrink[A1], pp1: (A1) ⇒ Pretty, a2: Arbitrary[A2], s2: Shrink[A2], pp2: (A2) ⇒ Pretty): Unit

    Definition Classes
    Checkers
  48. def check[A1, P](f: (A1) ⇒ P, configParams: PropertyCheckConfigParam*)(implicit config: PropertyCheckConfig, p: (P) ⇒ Prop, a1: Arbitrary[A1], s1: Shrink[A1], pp1: (A1) ⇒ Pretty): Unit

    Definition Classes
    Checkers
  49. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  50. def conversionCheckedConstraint[A, B](implicit equivalenceOfA: Equivalence[A], cnv: (B) ⇒ A): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  51. def convertEquivalenceToAToBConstraint[A, B](equivalenceOfB: Equivalence[B])(implicit ev: <:<[A, B]): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  52. def convertEquivalenceToAToBConversionConstraint[A, B](equivalenceOfB: Equivalence[B])(implicit ev: (A) ⇒ B): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  53. def convertEquivalenceToBToAConstraint[A, B](equivalenceOfA: Equivalence[A])(implicit ev: <:<[B, A]): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  54. def convertEquivalenceToBToAConversionConstraint[A, B](equivalenceOfA: Equivalence[A])(implicit ev: (B) ⇒ A): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  55. def convertToCheckingEqualizer[T](left: T): CheckingEqualizer[T]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  56. implicit def convertToEqualizer[T](left: T): Equalizer[T]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  57. def convertToLegacyCheckingEqualizer[T](left: T): LegacyCheckingEqualizer[T]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  58. def convertToLegacyEqualizer[T](left: T): LegacyEqualizer[T]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  59. def defaultEquality[A]: Equality[A]

    Definition Classes
    TripleEqualsSupport
  60. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  61. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  62. final def execute: Unit

    Definition Classes
    Suite
  63. final def execute(testName: String, configMap: ConfigMap, color: Boolean, durations: Boolean, shortstacks: Boolean, fullstacks: Boolean, stats: Boolean): Unit

    Definition Classes
    Suite
  64. def expectedTestCount(filter: Filter): Int

    Definition Classes
    Suite → AbstractSuite
  65. def fail(cause: Throwable): Nothing

    Definition Classes
    Assertions
  66. def fail(message: String, cause: Throwable): Nothing

    Definition Classes
    Assertions
  67. def fail(message: String): Nothing

    Definition Classes
    Assertions
  68. def fail(): Nothing

    Definition Classes
    Assertions
  69. def failExpectedTest[T](expected: T, found: T, description: String = ""): Unit

    Fail a test with a message about finding something and expecting something else.

    Fail a test with a message about finding something and expecting something else.

    Definition Classes
    Tests
  70. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  71. def genAdd(sz: Int): Gen[Add]

    Definition Classes
    Generator
  72. def genAsgn(sz: Int): Gen[Asgn]

    Definition Classes
    Generator
  73. def genDiv(sz: Int): Gen[Div]

    Definition Classes
    Generator
  74. val genDouble: Gen[Num]

    Definition Classes
    Generator
  75. def genExp(sz: Int): Gen[Exp]

    Definition Classes
    Generator
  76. val genIdn: Gen[String]

    Definition Classes
    Generator
  77. val genInteger: Gen[Num]

    Definition Classes
    Generator
  78. def genInternalExp(sz: Int): Gen[Exp]

    Definition Classes
    Generator
  79. def genInternalStmt(sz: Int): Gen[Stmt]

    Definition Classes
    Generator
  80. val genLeafExp: Gen[Exp with Serializable]

    Definition Classes
    Generator
  81. val genLeafStmt: Gen[Null]

    Definition Classes
    Generator
  82. def genMul(sz: Int): Gen[Mul]

    Definition Classes
    Generator
  83. def genNeg(sz: Int): Gen[Neg]

    Definition Classes
    Generator
  84. val genNum: Gen[Num]

    Definition Classes
    Generator
  85. def genSeqn(sz: Int): Gen[Seqn]

    Definition Classes
    Generator
  86. def genStmt(sz: Int): Gen[Stmt]

    Definition Classes
    Generator
  87. def genSub(sz: Int): Gen[Sub]

    Definition Classes
    Generator
  88. val genVar: Gen[Var]

    Definition Classes
    Generator
  89. def genWhile(sz: Int): Gen[While]

    Definition Classes
    Generator
  90. implicit val generatorDrivenConfig: PropertyCheckConfig

    Definition Classes
    Configuration
  91. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  92. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  93. def ignore(testName: String, testTags: Tag*)(testFun: ⇒ Unit): Unit

    Attributes
    protected
    Definition Classes
    FunSuiteLike
  94. def info: Informer

    Attributes
    protected
    Definition Classes
    FunSuiteLike → Informing
  95. def intercept[T <: AnyRef](f: ⇒ Any)(implicit manifest: Manifest[T]): T

    Definition Classes
    Assertions
  96. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  97. def lowPriorityConversionCheckedConstraint[A, B](implicit equivalenceOfB: Equivalence[B], cnv: (A) ⇒ B): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  98. def lowPriorityTypeCheckedConstraint[A, B](implicit equivalenceOfB: Equivalence[B], ev: <:<[A, B]): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  99. def markup: Documenter

    Attributes
    protected
    Definition Classes
    FunSuiteLike → Documenting
  100. def maxDiscarded(value: Int): MaxDiscarded

    Definition Classes
    Configuration
  101. def maxSize(value: Int): MaxSize

    Definition Classes
    Configuration
  102. def minSize(value: Int): MinSize

    Definition Classes
    Configuration
  103. def minSuccessful(value: Int): MinSuccessful

    Definition Classes
    Configuration
  104. val myrule1: Strategy

    Definition Classes
    RewriterTests
  105. val mystrategy1: Strategy

    Definition Classes
    RewriterTests
  106. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  107. def nestedSuites: IndexedSeq[Suite]

    Definition Classes
    Suite → AbstractSuite
  108. def note: Notifier

    Attributes
    protected
    Definition Classes
    FunSuiteLike → Notifying
  109. final def notify(): Unit

    Definition Classes
    AnyRef
  110. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  111. def pending: PendingNothing

    Definition Classes
    Suite
  112. def pendingUntilFixed(f: ⇒ Unit): Unit

    Definition Classes
    Suite
  113. def rerunner: Option[String]

    Definition Classes
    Suite → AbstractSuite
  114. val rewriter: MemoRewriter.type

    The rewriter which is being tested.

    The rewriter which is being tested.

    Definition Classes
    MemoRewriterTestsRewriterTests
  115. def run(testName: Option[String], args: Args): Status

    Definition Classes
    BeforeAndAfter → SuiteMixin
  116. final def run(testName: Option[String], reporter: Reporter, stopper: Stopper, filter: Filter, configMap: Map[String, Any], distributor: Option[Distributor], tracker: Tracker): Status

    Definition Classes
    AbstractSuite
  117. def runNestedSuites(args: Args): Status

    Attributes
    protected
    Definition Classes
    Suite → AbstractSuite
  118. def runTest(testName: String, args: Args): Status

    Attributes
    protected
    Definition Classes
    BeforeAndAfter → SuiteMixin
  119. def runTests(testName: Option[String], args: Args): Status

    Attributes
    protected
    Definition Classes
    FunSuiteLike → Suite → AbstractSuite
  120. def same(v1: Any, v2: Any): Boolean

    Compare two values.

    Compare two values. Use reference equality for references and value equality for non-references. If the values are both Some values, perform the check on the wrapped values.

    Definition Classes
    Tests
  121. final val styleName: String

    Definition Classes
    FunSuiteLike → Suite → AbstractSuite
  122. def suiteId: String

    Definition Classes
    Suite
  123. def suiteName: String

    Definition Classes
    Suite
  124. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  125. def tags: Map[String, Set[String]]

    Definition Classes
    FunSuiteLike → Suite → AbstractSuite
  126. def test(testName: String, testTags: Tag*)(testFun: ⇒ Unit): Unit

    Attributes
    protected
    Definition Classes
    FunSuiteLike
  127. def testDataFor(testName: String, theConfigMap: ConfigMap): TestData

    Definition Classes
    FunSuiteLike → Suite
  128. def testNames: Set[String]

    Definition Classes
    FunSuiteLike → Suite → AbstractSuite
  129. def testSharingRewrite(direction: String, strat: Strategy): Unit

    Generate tests that ensure that if a node is rewritten more than once in a traversal by strat the results at each stage will be shared in the overall result.

  130. def testsFor(unit: Unit): Unit

    Attributes
    protected
    Definition Classes
    FunSuiteLike
  131. def toString(): String

    Definition Classes
    AnyRef → Any
  132. def trap[T](f: ⇒ T): Throwable

    Definition Classes
    Assertions
  133. def travtest(basemsg: String, testmsg: String, eval: Option[Any], expected: Option[Any], expecting: Expecting = Equal): Unit

    Definition Classes
    RewriterTests
  134. def typeCheckedConstraint[A, B](implicit equivalenceOfA: Equivalence[A], ev: <:<[B, A]): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  135. implicit def unconstrainedEquality[A, B](implicit equalityOfA: Equality[A]): Constraint[A, B]

    Definition Classes
    TripleEquals → TripleEqualsSupport
  136. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  137. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  138. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  139. def withClue[T](clue: Any)(fun: ⇒ T): T

    Definition Classes
    Assertions
  140. def withFixture(test: NoArgTest): Outcome

    Attributes
    protected
    Definition Classes
    Suite → AbstractSuite
  141. def workers(value: Int): Workers

    Definition Classes
    Configuration

Deprecated Value Members

  1. def assert(o: Option[String]): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This method has been deprecated in favor of macro assertion and will be removed in a future version of ScalaTest. If you need this, please copy the source code into your own trait instead.

  2. def assert(o: Option[String], clue: Any): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This method has been deprecated in favor of macro assertion and will be removed in a future version of ScalaTest. If you need this, please copy the source code into your own trait instead.

  3. def assume(o: Option[String]): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This method has been deprecated in favor of macro assumption and will be removed in a future version of ScalaTest. If you need this, please copy the source code into your own trait instead.

  4. def assume(o: Option[String], clue: Any): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This method has been deprecated in favor of macro assumption and will be removed in a future version of ScalaTest. If you need this, please copy the source code into your own trait instead.

  5. def expect(expected: Any)(actual: Any): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This expect method has been deprecated. Please replace all invocations of expect with an identical invocation of assertResult instead.

  6. def expect(expected: Any, clue: Any)(actual: Any): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This expect method has been deprecated. Please replace all invocations of expect with an identical invocation of assertResult instead.

  7. def expectResult(expected: Any)(actual: Any): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This expectResult method has been deprecated. Please replace all invocations of expectResult with an identical invocation of assertResult instead.

  8. def expectResult(expected: Any, clue: Any)(actual: Any): Unit

    Definition Classes
    Assertions
    Annotations
    @deprecated
    Deprecated

    This expectResult method has been deprecated. Please replace all invocations of expectResult with an identical invocation of assertResult instead.

Inherited from RewriterTests

Inherited from Generator

Inherited from Checkers

Inherited from Configuration

Inherited from Tests

Inherited from BeforeAndAfter

Inherited from SuiteMixin

Inherited from FunSuiteLike

Inherited from Documenting

Inherited from Alerting

Inherited from Notifying

Inherited from Informing

Inherited from Suite

Inherited from Serializable

Inherited from AbstractSuite

Inherited from Assertions

Inherited from TripleEquals

Inherited from TripleEqualsSupport

Inherited from AnyRef

Inherited from Any

Ungrouped