Overview | Index | Help

## SMLPPTest0010

`structure SMLPPTest0010 =
struct
structure Assert = SMLUnit.Assert
structure Test = SMLUnit.Test
structure Testee = SMLPP
structure FE = Testee.FormatExpression
structure PP = Testee.PrinterParameter
val TESTASSOC_COLUMNS
val prettyPrint
val makeExpression
val assertAssoc
val testAssoc0001
val testAssoc0002
val testAssoc0003
val testAssoc0004
val testAssoc0005
val testAssoc0006
val testAssoc0007
val testAssoc0008
val testAssoc0101
val testAssoc0102
val testAssoc0103
val testAssoc0104
val testAssoc0105
val testAssoc0106
val testAssoc0107
val testAssoc0108
val suite
end`

  verify the inheritance of associativity when the expressions contains three nested guards.

  These cases pretty-print expressions of the form as follows:

       c{ d{ e{ ... } } ... d{ e{ ... } } }

  c, d, e denotes assoc indicators.

  variation of cut attribute of assoc indicator of the middle guard:

  - without cut
  - with cut

  variation of strength of assoc indicators:

  - (1) c < d < e
  - (2) c < e < d
  - (3) d < c < e
  - (4) d < e < c
  - (5) e < c < d
  - (6) e < d < c
  - (7) c < e (the middle guard has no assoc)
  - (8) e < c (the middle guard has no assoc)

  Test cases matrix
  case | cut attribute | strength of assoc indicators
  --- | --- | ---
  0001 | without cut | 1
  0002 | 2
  0003 | 3
  0004 | 4
  0005 | 5
  0006 | 6
  0007 | 7
  0008 | 8
  0101 | with cut | 1
  0102 | 2
  0103 | 3
  0104 | 4
  0105 | 5
  0106 | 6
  0107 | 7
  0108 | 8

Value detail

### TESTASSOC_COLUMNS

`val TESTASSOC_COLUMNS`

### prettyPrint

`val prettyPrint`

### makeExpression

`val makeExpression`

### assertAssoc

`val assertAssoc`

### testAssoc0001

`val testAssoc0001`

### testAssoc0002

`val testAssoc0002`

### testAssoc0003

`val testAssoc0003`

### testAssoc0004

`val testAssoc0004`

### testAssoc0005

`val testAssoc0005`

### testAssoc0006

`val testAssoc0006`

### testAssoc0007

`val testAssoc0007`

### testAssoc0008

`val testAssoc0008`

### testAssoc0101

`val testAssoc0101`

### testAssoc0102

`val testAssoc0102`

### testAssoc0103

`val testAssoc0103`

### testAssoc0104

`val testAssoc0104`

### testAssoc0105

`val testAssoc0105`

### testAssoc0106

`val testAssoc0106`

### testAssoc0107

`val testAssoc0107`

### testAssoc0108

`val testAssoc0108`

### suite

`val suite`

Overview | Index | Help