Attributes
- Companion
- class
- Graph
-
- Supertypes
-
trait Syntaxtrait ImplicitsSyntaxtrait RuleTransducerSyntaxtrait RuleGeneratorSyntaxclass Objecttrait Matchableclass AnyShow all
- Self type
-
DummyNetwork.type
Members list
Type members
Inherited classlikes
Attributes
- Inherited from:
- Syntax
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class DummyNetwork
Defines a number of implicit conversions most of which are needed to make the MetaRUL syntax work.
Defines a number of implicit conversions most of which are needed to make the MetaRUL syntax work.
Attributes
- Inherited from:
- ImplicitsSyntax
- Supertypes
Attributes
- Inherited from:
- ImplicitsSyntax
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object Implicits
Needs to be implemented for generating RUL2 code for a specific project, along with an Syntax#IdResolver.
Needs to be implemented for generating RUL2 code for a specific project, along with an Syntax#IdResolver.
Attributes
- Inherited from:
- RuleGeneratorSyntax
- Supertypes
-
class Objecttrait Matchableclass Any
The main logic to translate meta code (Rule[Tile]
) to proper RUL2 code (Rule[IdTile]
). The crux of that is that a single meta rule can result in multiple RUL2 rules, based on the symmetries of the tiles involved. Exactly those rules and orientations will be generated that are necessary. Compare, for example:
The main logic to translate meta code (Rule[Tile]
) to proper RUL2 code (Rule[IdTile]
). The crux of that is that a single meta rule can result in multiple RUL2 rules, based on the symmetries of the tiles involved. Exactly those rules and orientations will be generated that are necessary. Compare, for example:
scala> transduce( L1Rhw2~WE | (Dirtroad ~> L1Rhw2)~WE )
Rule( 0x57100000,1,0 | 0x57000000,1,0 | 0x57100000,1,0 | 0x57100000,1,0 )
Rule( 0x57100000,3,0 | 0x57000000,3,0 | 0x57100000,3,0 | 0x57100000,3,0 )
scala> transduce( L1Rhw3~WE | (Dirtroad ~> L1Rhw3)~WE )
Rule( 0x57110000,3,0 | 0x57000000,1,0 | 0x57110000,3,0 | 0x57110000,3,0 )
Rule( 0x57110000,3,0 | 0x57000000,3,0 | 0x57110000,3,0 | 0x57110000,3,0 )
Rule( 0x57110000,1,0 | 0x57000000,3,0 | 0x57110000,1,0 | 0x57110000,1,0 )
Rule( 0x57110000,1,0 | 0x57000000,1,0 | 0x57110000,1,0 | 0x57110000,1,0 )
scala> transduce( Mis~WE & Rail~NW | (Dirtroad ~> Mis)~WE & Dirtroad~ES )
Rule( 0x57024580,1,0 | 0x57004A00,3,0 | 0x57024580,1,0 | 0x57024A00,3,0 )
If in doubt, start up the sbt console
and use the transduce
function to check the output.
Attributes
- Inherited from:
- RuleTransducerSyntax
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- Syntax
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Types
Inherited types
The function that maps Tiles
(meta syntax) to IdTiles
(IID, Rot, Flip).
The function that maps Tiles
(meta syntax) to IdTiles
(IID, Rot, Flip).
Attributes
- Inherited from:
- Syntax