alvinalexander.com | career | drupal | java | mac | mysql | perl | scala | uml | unix  

Scala example source code file (AbstractSyntax.scala)

This example Scala source code file (AbstractSyntax.scala) is included in the DevDaily.com "Java Source Code Warehouse" project. The intent of this project is to help you "Learn Java by Example" TM.

Java - Scala tags/keywords

abstractsyntax, abstractsyntax, any, boolean, boolean, element, element, nameelement, nameelement, positional, string

The Scala AbstractSyntax.scala source code

/*                     __                                               *\
**     ________ ___   / /  ___     Scala API                            **
**    / __/ __// _ | / /  / _ |    (c) 2006-2011, LAMP/EPFL             **
**  __\ \/ /__/ __ |/ /__/ __ |                                         **
** /____/\___/_/ |_/____/_/ | |                                         **
**                          |/                                          **
\*                                                                      */

package scala.util.parsing.ast

import scala.util.parsing.input.Positional

/** This component provides the core abstractions for representing an Abstract Syntax Tree
 *
 * @author Adriaan Moors 
 */
trait AbstractSyntax {
  /** The base class for elements of the abstract syntax tree.
   */
  trait Element extends Positional
  
  /** The base class for elements in the AST that represent names {@see Binders}.
   */
  trait NameElement extends Element {
    def name: String
    override def equals(that: Any): Boolean = that match {
      case n: NameElement => n.name == name
      case _ => false
    }
  }
}

Other Scala examples (source code examples)

Here is a short list of links related to this Scala AbstractSyntax.scala source code file:

... this post is sponsored by my books ...

#1 New Release!

FP Best Seller

 

new blog posts

 

Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.

A percentage of advertising revenue from
pages under the /java/jwarehouse URI on this website is
paid back to open source projects.