Skip to content

Commit cf13cd6

Browse files
committed
Expression eval WIP
1 parent 5cf6989 commit cf13cd6

File tree

78 files changed

+3882
-132
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

78 files changed

+3882
-132
lines changed

.gitattributes

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Auto detect text files and perform LF normalization
2+
3+
* text=auto

.gitignore

+21-132
Original file line numberDiff line numberDiff line change
@@ -1,80 +1,57 @@
11
## Ignore Visual Studio temporary files, build results, and
22
## files generated by popular Visual Studio add-ons.
3-
##
4-
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
53

64
# User-specific files
7-
*.rsuser
85
*.suo
96
*.user
107
*.userosscache
118
*.sln.docstates
9+
.idea
1210

1311
# User-specific files (MonoDevelop/Xamarin Studio)
1412
*.userprefs
1513

16-
# Mono auto generated files
17-
mono_crash.*
18-
1914
# Build results
2015
[Dd]ebug/
2116
[Dd]ebugPublic/
2217
[Rr]elease/
2318
[Rr]eleases/
2419
x64/
2520
x86/
26-
[Aa][Rr][Mm]/
27-
[Aa][Rr][Mm]64/
2821
bld/
2922
[Bb]in/
3023
[Oo]bj/
31-
[Ll]og/
32-
[Ll]ogs/
3324

34-
# Visual Studio 2015/2017 cache/options directory
25+
# Visual Studio 2015 cache/options directory
3526
.vs/
3627
# Uncomment if you have tasks that create the project's static files in wwwroot
3728
#wwwroot/
3829

39-
# Visual Studio 2017 auto generated files
40-
Generated\ Files/
41-
4230
# MSTest test Results
4331
[Tt]est[Rr]esult*/
4432
[Bb]uild[Ll]og.*
4533

46-
# NUnit
34+
# NUNIT
4735
*.VisualState.xml
4836
TestResult.xml
49-
nunit-*.xml
5037

5138
# Build Results of an ATL Project
5239
[Dd]ebugPS/
5340
[Rr]eleasePS/
5441
dlldata.c
5542

56-
# Benchmark Results
57-
BenchmarkDotNet.Artifacts/
58-
59-
# .NET Core
43+
# DNX
6044
project.lock.json
61-
project.fragment.lock.json
6245
artifacts/
6346

64-
# StyleCop
65-
StyleCopReport.xml
66-
67-
# Files built by Visual Studio
6847
*_i.c
6948
*_p.c
70-
*_h.h
49+
*_i.h
7150
*.ilk
7251
*.meta
7352
*.obj
74-
*.iobj
7553
*.pch
7654
*.pdb
77-
*.ipdb
7855
*.pgc
7956
*.pgd
8057
*.rsp
@@ -84,7 +61,6 @@ StyleCopReport.xml
8461
*.tlh
8562
*.tmp
8663
*.tmp_proj
87-
*_wpftmp.csproj
8864
*.log
8965
*.vspscc
9066
*.vssscc
@@ -104,18 +80,13 @@ ipch/
10480
*.opensdf
10581
*.sdf
10682
*.cachefile
107-
*.VC.db
108-
*.VC.VC.opendb
10983

11084
# Visual Studio profiler
11185
*.psess
11286
*.vsp
11387
*.vspx
11488
*.sap
11589

116-
# Visual Studio Trace Files
117-
*.e2e
118-
11990
# TFS 2012 Local Workspace
12091
$tf/
12192

@@ -127,20 +98,15 @@ _ReSharper*/
12798
*.[Rr]e[Ss]harper
12899
*.DotSettings.user
129100

101+
# JustCode is a .NET coding add-in
102+
.JustCode
103+
130104
# TeamCity is a build add-in
131105
_TeamCity*
132106

133107
# DotCover is a Code Coverage Tool
134108
*.dotCover
135109

136-
# AxoCover is a Code Coverage Tool
137-
.axoCover/*
138-
!.axoCover/settings.json
139-
140-
# Visual Studio code coverage results
141-
*.coverage
142-
*.coveragexml
143-
144110
# NCrunch
145111
_NCrunch_*
146112
.*crunch*.local.xml
@@ -172,27 +138,20 @@ publish/
172138
# Publish Web Output
173139
*.[Pp]ublish.xml
174140
*.azurePubxml
175-
# Note: Comment the next line if you want to checkin your web deploy settings,
141+
# TODO: Comment the next line if you want to checkin your web deploy settings
176142
# but database connection strings (with potential passwords) will be unencrypted
177143
*.pubxml
178144
*.publishproj
179145

180-
# Microsoft Azure Web App publish settings. Comment the next line if you want to
181-
# checkin your Azure Web App publish settings, but sensitive information contained
182-
# in these scripts will be unencrypted
183-
PublishScripts/
184-
185146
# NuGet Packages
186147
*.nupkg
187-
# NuGet Symbol Packages
188-
*.snupkg
189148
# The packages folder can be ignored because of Package Restore
190-
**/[Pp]ackages/*
149+
**/packages/*
191150
# except build/, which is used as an MSBuild target.
192-
!**/[Pp]ackages/build/
151+
!**/packages/build/
193152
# Uncomment if necessary however generally it will be regenerated when needed
194-
#!**/[Pp]ackages/repositories.config
195-
# NuGet v3's project.json files produces more ignorable files
153+
#!**/packages/repositories.config
154+
# NuGet v3's project.json files produces more ignoreable files
196155
*.nuget.props
197156
*.nuget.targets
198157

@@ -204,40 +163,30 @@ csx/
204163
ecf/
205164
rcf/
206165

207-
# Windows Store app package directories and files
166+
# Microsoft Azure ApplicationInsights config file
167+
ApplicationInsights.config
168+
169+
# Windows Store app package directory
208170
AppPackages/
209171
BundleArtifacts/
210-
Package.StoreAssociation.xml
211-
_pkginfo.txt
212-
*.appx
213-
*.appxbundle
214-
*.appxupload
215172

216173
# Visual Studio cache files
217174
# files ending in .cache can be ignored
218175
*.[Cc]ache
219176
# but keep track of directories ending in .cache
220-
!?*.[Cc]ache/
177+
!*.[Cc]ache/
221178

222179
# Others
223180
ClientBin/
224181
~$*
225182
*~
226183
*.dbmdl
227184
*.dbproj.schemaview
228-
*.jfm
229185
*.pfx
230186
*.publishsettings
187+
node_modules/
231188
orleans.codegen.cs
232189

233-
# Including strong name files can present a security risk
234-
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
235-
#*.snk
236-
237-
# Since there are multiple workflows, uncomment next line to ignore bower_components
238-
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
239-
#bower_components/
240-
241190
# RIA/Silverlight projects
242191
Generated_Code/
243192

@@ -248,22 +197,15 @@ _UpgradeReport_Files/
248197
Backup*/
249198
UpgradeLog*.XML
250199
UpgradeLog*.htm
251-
ServiceFabricBackup/
252-
*.rptproj.bak
253200

254201
# SQL Server files
255202
*.mdf
256203
*.ldf
257-
*.ndf
258204

259205
# Business Intelligence projects
260206
*.rdl.data
261207
*.bim.layout
262208
*.bim_*.settings
263-
*.rptproj.rsuser
264-
*- [Bb]ackup.rdl
265-
*- [Bb]ackup ([0-9]).rdl
266-
*- [Bb]ackup ([0-9][0-9]).rdl
267209

268210
# Microsoft Fakes
269211
FakesAssemblies/
@@ -273,17 +215,13 @@ FakesAssemblies/
273215

274216
# Node.js Tools for Visual Studio
275217
.ntvs_analysis.dat
276-
node_modules/
277218

278219
# Visual Studio 6 build log
279220
*.plg
280221

281222
# Visual Studio 6 workspace options file
282223
*.opt
283224

284-
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
285-
*.vbw
286-
287225
# Visual Studio LightSwitch build output
288226
**/*.HTMLClient/GeneratedArtifacts
289227
**/*.DesktopClient/GeneratedArtifacts
@@ -294,57 +232,8 @@ _Pvt_Extensions
294232

295233
# Paket dependency manager
296234
.paket/paket.exe
297-
paket-files/
298235

299236
# FAKE - F# Make
300237
.fake/
301-
302-
# CodeRush personal settings
303-
.cr/personal
304-
305-
# Python Tools for Visual Studio (PTVS)
306-
__pycache__/
307-
*.pyc
308-
309-
# Cake - Uncomment if you are using it
310-
# tools/**
311-
# !tools/packages.config
312-
313-
# Tabs Studio
314-
*.tss
315-
316-
# Telerik's JustMock configuration file
317-
*.jmconfig
318-
319-
# BizTalk build output
320-
*.btp.cs
321-
*.btm.cs
322-
*.odx.cs
323-
*.xsd.cs
324-
325-
# OpenCover UI analysis results
326-
OpenCover/
327-
328-
# Azure Stream Analytics local run output
329-
ASALocalRun/
330-
331-
# MSBuild Binary and Structured Log
332-
*.binlog
333-
334-
# NVidia Nsight GPU debugger configuration file
335-
*.nvuser
336-
337-
# MFractors (Xamarin productivity tool) working folder
338-
.mfractor/
339-
340-
# Local History for Visual Studio
341-
.localhistory/
342-
343-
# BeatPulse healthcheck temp database
344-
healthchecksdb
345-
346-
# Backup folder for Package Reference Convert tool in Visual Studio 2017
347-
MigrationBackup/
348-
349-
# Ionide (cross platform F# VS Code tools) working folder
350-
.ionide/
238+
example/Sample/log.txt
239+
BenchmarkDotNet.Artifacts/

Build.ps1

+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
echo "build: Build started"
2+
3+
Push-Location $PSScriptRoot
4+
5+
if(Test-Path .\artifacts) {
6+
echo "build: Cleaning .\artifacts"
7+
Remove-Item .\artifacts -Force -Recurse
8+
}
9+
10+
& dotnet restore --no-cache
11+
12+
$branch = @{ $true = $env:APPVEYOR_REPO_BRANCH; $false = $(git symbolic-ref --short -q HEAD) }[$env:APPVEYOR_REPO_BRANCH -ne $NULL];
13+
$revision = @{ $true = "{0:00000}" -f [convert]::ToInt32("0" + $env:APPVEYOR_BUILD_NUMBER, 10); $false = "local" }[$env:APPVEYOR_BUILD_NUMBER -ne $NULL];
14+
$suffix = @{ $true = ""; $false = "$($branch.Substring(0, [math]::Min(10,$branch.Length)))-$revision"}[$branch -eq "master" -and $revision -ne "local"]
15+
$commitHash = $(git rev-parse --short HEAD)
16+
$buildSuffix = @{ $true = "$($suffix)-$($commitHash)"; $false = "$($branch)-$($commitHash)" }[$suffix -ne ""]
17+
18+
echo "build: Package version suffix is $suffix"
19+
echo "build: Build version suffix is $buildSuffix"
20+
21+
foreach ($src in ls src/*) {
22+
Push-Location $src
23+
24+
echo "build: Packaging project in $src"
25+
26+
& dotnet build -c Release --version-suffix=$buildSuffix
27+
28+
if($suffix) {
29+
& dotnet pack -c Release --include-source --no-build -o ..\..\artifacts --version-suffix=$suffix
30+
} else {
31+
& dotnet pack -c Release --include-source --no-build -o ..\..\artifacts
32+
}
33+
if($LASTEXITCODE -ne 0) { exit 1 }
34+
35+
Pop-Location
36+
}
37+
38+
foreach ($test in ls test/*.Tests) {
39+
Push-Location $test
40+
41+
echo "build: Testing project in $test"
42+
43+
& dotnet test -c Release
44+
if($LASTEXITCODE -ne 0) { exit 3 }
45+
46+
Pop-Location
47+
}
48+
49+
foreach ($test in ls test/*.PerformanceTests) {
50+
Push-Location $test
51+
52+
echo "build: Building performance test project in $test"
53+
54+
& dotnet build -c Release
55+
if($LASTEXITCODE -ne 0) { exit 2 }
56+
57+
Pop-Location
58+
}
59+
60+
Pop-Location

0 commit comments

Comments
 (0)