Skip to content

Instantly share code, notes, and snippets.

View adamretter's full-sized avatar
🎩
Down the Code Mine

Adam Retter adamretter

🎩
Down the Code Mine
View GitHub Profile
@adamretter
adamretter / SourceBlock.java
Created July 16, 2013 15:10
Jenkins plugin inner config class
package hudson.plugins.scalabuilder;
import hudson.Extension;
import hudson.model.AbstractDescribableImpl;
import hudson.model.Descriptor;
import hudson.tasks.BuildStepDescriptor;
import hudson.tasks.Builder;
import org.kohsuke.stapler.DataBoundConstructor;
/**
@adamretter
adamretter / parser1-test.scala
Created September 24, 2012 17:20
Scala Parser Combinators - need mutually exclusive Global Directives
def Expr = (GlobalDirectiveExpr*) ~ (ColumnRuleExpr+) ^^ {
case d ~ r => CsvSchema(d, r)
}
def GlobalDirectiveExpr = "@" ~> (SeparatorExpr | QuotedExpr | TotalColumnsExpr | NoHeaderExpr | IgnoreColumnNameCaseExpr) ^^ {
case d => Directive(d)
}
@adamretter
adamretter / gist:3639589
Created September 5, 2012 16:39
Partial Function application for JDBC Connections in Scala
def withConnection[T](ds: ComboPooledDataSource, fn : Connection => T) : T = {
var optConn : Option[Connection] = Option.empty;
try {
val conn = ds.getConnection
optConn = Some(conn);
fn(conn)
} finally {
@adamretter
adamretter / depth2.xquery
Created August 21, 2012 21:40
Calculate the depth of tree in XQuery
declare function local:_recurse_depth($element, $count) as xs:integer*
{
if($element[child::element()])then
for $child in $element/child::element() return
local:_recurse_depth($child, $count + 1)
else
$count
};
declare function local:depth($x as node()?) as xs:integer
@adamretter
adamretter / RuleParser.scala
Created April 28, 2012 13:13
Scala Parser, trying to parse regexp
package csvvalidator
import scala.util.parsing.combinator.syntactical.StandardTokenParsers
import scala.io.Source;
/**
* Adam Retter
*/
object TestProblemParser extends StandardTokenParsers {