/*
 * generated by Xtext
 */
package org.xtext.example.mydsl.scoping;

import org.eclipse.xtext.scoping.impl.AbstractDeclarativeScopeProvider;

/**
 * This class contains custom scoping description.
 * 
 * see : http://www.eclipse.org/Xtext/documentation/latest/xtext.html#scoping
 * on how and when to use it 
 *
 */
public class MyDslScopeProvider extends AbstractDeclarativeScopeProvider {

}
