gloss 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/self_build.yml +45 -0
- data/Gemfile.lock +1 -1
- data/ext/gloss/lib/cr_ruby.cr +5 -4
- data/ext/gloss/src/gloss.cr +6 -1
- data/lib/gloss.rb +1 -5
- data/lib/gloss/version.rb +1 -1
- data/src/lib/gloss.gl +1 -2
- data/src/lib/gloss/version.gl +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ed8cc1e615a2df1545467719ac63f8e2667a6e80c0e8fb3e05bf2e11d657779c
|
4
|
+
data.tar.gz: 59ecbb8e9f8327d8ffc86ffcb7254526b8dc2874d9c72b9fcd5f316f8c02334d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 91a18fc32f3a8dd27e14e9206c623fa3c608b0c6215ed8f239ae4f23a5ffa1f529b6b0cf4ddb6beeeb103b0d522c3a7bfdf5dc1d4462df0ba8a9da6598cb7c79
|
7
|
+
data.tar.gz: 8c42f4e1c6b92b5823835684d932ce686c6c517558d8e0061dc5633d7aa8eb11f8c652bf6aadca0bd5748731fdc51ae09543354de505da57640c89f5b457f5b4
|
@@ -0,0 +1,45 @@
|
|
1
|
+
name: Self Build
|
2
|
+
|
3
|
+
on:
|
4
|
+
push:
|
5
|
+
branches: [ master ]
|
6
|
+
pull_request:
|
7
|
+
branches: [ master ]
|
8
|
+
env:
|
9
|
+
ImageOS: ubuntu18
|
10
|
+
jobs:
|
11
|
+
build:
|
12
|
+
|
13
|
+
runs-on: ubuntu-latest
|
14
|
+
|
15
|
+
container:
|
16
|
+
image: crystallang/crystal
|
17
|
+
|
18
|
+
steps:
|
19
|
+
- uses: actions/checkout@v2
|
20
|
+
- name: Set up Ruby
|
21
|
+
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
|
22
|
+
# change this to (see https://github.com/ruby/setup-ruby#versioning):
|
23
|
+
# uses: ruby/setup-ruby@v1
|
24
|
+
uses: ruby/setup-ruby@21351ecc0a7c196081abca5dc55b08f085efe09a
|
25
|
+
with:
|
26
|
+
ruby-version: 2.7
|
27
|
+
- name: Install ruby-dev
|
28
|
+
run: apt-get update -y && apt-get install -y ruby-dev
|
29
|
+
- uses: actions/cache@v2
|
30
|
+
id: gems-cache
|
31
|
+
with:
|
32
|
+
path: vendor/bundle
|
33
|
+
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
|
34
|
+
restore-keys: |
|
35
|
+
${{ runner.os }}-gems-
|
36
|
+
- name: install Bundler
|
37
|
+
run: gem install bundler:2.2.3
|
38
|
+
- name: install gems
|
39
|
+
run: bundle install --jobs 4 --retry 3
|
40
|
+
- name: build native extensions
|
41
|
+
run: cd ext/gloss && make && cd -
|
42
|
+
- name: Build self with current state
|
43
|
+
run: ls lib/ && exe/gloss build
|
44
|
+
- name: check installation from rubygems
|
45
|
+
run: gem install gloss
|
data/Gemfile.lock
CHANGED
data/ext/gloss/lib/cr_ruby.cr
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
lib CrRuby
|
2
2
|
# every ruby Object is a VALUE
|
3
3
|
type VALUE = Void*
|
4
|
-
# ruby method typing
|
5
|
-
type METHOD_FUNC = VALUE, VALUE -> VALUE
|
6
4
|
|
7
5
|
# a ruby Class is a VALUE
|
8
6
|
$rb_cObject : VALUE
|
@@ -28,8 +26,11 @@ lib CrRuby
|
|
28
26
|
fun rb_define_module(name: UInt8*) : VALUE
|
29
27
|
|
30
28
|
# define ruby method in C
|
31
|
-
fun rb_define_method(klass: VALUE, name: UInt8*, func:
|
29
|
+
fun rb_define_method(klass: VALUE, name: UInt8*, func: Proc(CrRuby::VALUE, CrRuby::VALUE,
|
30
|
+
CrRuby::VALUE), argc: Int32)
|
32
31
|
|
33
32
|
# define singleton ruby method in C
|
34
|
-
fun rb_define_singleton_method(klass: VALUE, name: UInt8*, func:
|
33
|
+
fun rb_define_singleton_method(klass: VALUE, name: UInt8*, func: Proc(CrRuby::VALUE,
|
34
|
+
CrRuby::VALUE,
|
35
|
+
CrRuby::VALUE), argc: Int32)
|
35
36
|
end
|
data/ext/gloss/src/gloss.cr
CHANGED
@@ -21,5 +21,10 @@ fun init = Init_gls
|
|
21
21
|
GC.init
|
22
22
|
LibCrystalMain.__crystal_main(0, Pointer(Pointer(UInt8)).null)
|
23
23
|
gloss = CrRuby.rb_define_module("Gloss");
|
24
|
-
CrRuby.rb_define_singleton_method(
|
24
|
+
CrRuby.rb_define_singleton_method(
|
25
|
+
gloss,
|
26
|
+
"parse_buffer",
|
27
|
+
->parse_string(CrRuby::VALUE, CrRuby::VALUE),
|
28
|
+
1
|
29
|
+
);
|
25
30
|
end
|
data/lib/gloss.rb
CHANGED
@@ -22,11 +22,7 @@ require "gloss/errors"
|
|
22
22
|
require "gloss/logger"
|
23
23
|
require "gloss/prog_loader"
|
24
24
|
require "gloss/utils"
|
25
|
-
|
26
|
-
false}
|
27
|
-
unless is_ci
|
28
|
-
require "gls"
|
29
|
-
end
|
25
|
+
require "gls"
|
30
26
|
EMPTY_ARRAY = Array.new
|
31
27
|
.freeze
|
32
28
|
EMPTY_HASH = {}.freeze
|
data/lib/gloss/version.rb
CHANGED
data/src/lib/gloss.gl
CHANGED
data/src/lib/gloss/version.gl
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gloss
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- johansenja
|
@@ -134,6 +134,7 @@ files:
|
|
134
134
|
- ".gitattributes"
|
135
135
|
- ".github/workflows/crystal_specs.yml"
|
136
136
|
- ".github/workflows/ruby_specs.yml"
|
137
|
+
- ".github/workflows/self_build.yml"
|
137
138
|
- ".gitignore"
|
138
139
|
- ".gloss.yml"
|
139
140
|
- ".rspec"
|