Module: StonesSpec::Subject

Defined in:
lib/stones_spec/subject.rb

Defined Under Namespace

Modules: Program Classes: Callable, Function, Procedure

Class Method Summary collapse

Class Method Details

.from(name) ⇒ Object



3
4
5
6
7
8
9
# File 'lib/stones_spec/subject.rb', line 3

def self.from(name)
  if name
    infer_subject_type_for(name).new(name)
  else
    Program
  end
end

.infer_subject_type_for(string) ⇒ Object



11
12
13
# File 'lib/stones_spec/subject.rb', line 11

def self.infer_subject_type_for(string)
  string.start_with_lowercase? ? StonesSpec::Subject::Function : StonesSpec::Subject::Procedure
end